SalesLeads

Leads

Sales · 6 операцій

GET

List leads

/api/lead

Leads (sales deals) with filters: pipeline, current stage (stageIds) or its kind (stageTypes: INCOMING, REGULAR, CLOSED_WON, CLOSED_LOST), source, managers or hasNoManager, created range, a move into a stage within a range (stageEnteredStart/End: "won this month" is stageTypes=CLOSED_WON with that range), stuck leads (stageUnchangedSince), refusal reasons, linked student. Paginated; "total" is the full count.

list_leads

Параметри запиту · 48

pagenumberмін. 1 · за замовчуванням 1
pageSizenumber1–250 · за замовчуванням 20
stageTypesstring[]Kind of the current stage: CLOSED_WON for won deals, CLOSED_LOST for lost ones, INCOMING and REGULAR for open ones.Одне з: REGULAR INCOMING CLOSED_WON CLOSED_LOST
sortBystringОдне з: lead pipeline stage sourceOfLead createdAt
sortOrderstringОдне з: ASC DESC
leadIdsnumber[]—
pipelineIdnumberобовʼязковий—
searchstringобовʼязковий—
Показати ще 40
nameOfLeadstringобовʼязковийдовжина макс. 150
studentIdnumberобовʼязковий—
reasonForRefusalIdnumberобовʼязковий—
reasonForRefusalIdsnumber[]—
managerIdsnumber[]—
hasNoManagerbooleanOnly leads nobody is responsible for.
stageIdsnumber[]Current stage.
sourceOfLeadIdsnumber[]—
createdStartstringCreated from, a school-local calendar day.
createdEndstringCreated until, inclusive: the end of that school-local day.
stageEnteredStartstringMoved into a stage from this school-local day; with stageIds or stageTypes, into one of those stages. "Won this month" is stageTypes=CLOSED_WON with this range.
stageEnteredEndstringMoved into a stage until this school-local day, inclusive.
stageUnchangedSincestringNot moved between stages since this school-local day: leads stuck in their current stage.
notestringобовʼязковий—
studentStatusOfStudentIdnumberобовʼязковий—
studentFirstNamestringобовʼязковий—
studentLastNamestringобовʼязковий—
studentMiddleNamestringобовʼязковий—
studentIsChildstringобовʼязковий—
studentGenderstringобовʼязковийОдне з: MALE FEMALE
studentTeacherIdsnumber[]—
studentManagerIdsnumber[]—
studentReasonForRefusalIdsnumber[]—
studentTeachingProgramIdsnumber[]—
studentClassOfStudentIdsnumber[]—
studentSubscriptionIdsnumber[]—
studentBalanceFromnumber—
studentBalanceTonumber—
studentLessonsLeftFromnumber—
studentLessonsLeftTonumber—
studentNotestringобовʼязковий—
studentHasGroupbooleanобовʼязковий—
studentHasNoGroupbooleanобовʼязковий—
studentHasNoLessonsbooleanобовʼязковий—
studentIsDebtorbooleanобовʼязковий—
studentHasFreeLessonsbooleanобовʼязковий—
studentHasFreeTrialLessonsbooleanобовʼязковий—
studentHasExpiredSubscriptionbooleanобовʼязковий—
studentIsArchivalboolean—
cfstring[]—

Відповідь · 200

application/json

statusCodenumberобовʼязковийприклад 200
messagestringобовʼязковий—
dataobject4 поля
totalnumberобовʼязковий—
totalPagesnumberобовʼязковий—
currentPagenumberобовʼязковий—
leadsobject[]обовʼязковий13 полів
costOfLeadnumberобовʼязковийможе бути null—
leadIdnumberобовʼязковий—
pipelineIdnumberобовʼязковийможе бути null—
stageIdnumberобовʼязковийможе бути null—
nameOfLeadstringобовʼязковий—
contactsobject[]обовʼязковий3 поля
typestringобовʼязковий—
valuestringобовʼязковий—
labelstringобовʼязковийможе бути null—
notestringобовʼязковийможе бути null—
avatarUrlstringобовʼязковийможе бути null—
boughtWithoutTrialbooleanобовʼязковий—
archivedAtstringобовʼязковийможе бути nullформат YYYY-MM-DDTHH:mm:ss
updatedAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
createdAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
customFieldsobjectдовільні ключі
Помилки400401403429500
curl "https://your-school.rist.pro/api/lead" \
  -H "Authorization: Bearer $RIST_API_KEY"
Приклад відповіді · 200
{
  "statusCode": 200,
  "message": "Operation completed successfully",
  "data": {
    "total": 0,
    "totalPages": 0,
    "currentPage": 0,
    "leads": [
      {
        "costOfLead": 0,
        "leadId": 1,
        "pipelineId": 1,
        "stageId": 1,
        "nameOfLead": "string",
        "contacts": [
          {
            "type": "string",
            "value": "string",
            "label": "string"
          }
        ],
        "note": "string",
        "avatarUrl": "string",
        "boughtWithoutTrial": false,
        "archivedAt": "2026-11-09T14:30:00",
        "updatedAt": "2026-11-09T14:30:00",
        "createdAt": "2026-11-09T14:30:00",
        "customFields": {}
      }
    ]
  }
}

How many leads match the GET /api/lead filters, per stage (funnel order), pipeline, source, manager or refusal reason (groupBy). Lost leads by reason: groupBy=reasonForRefusal, stageTypes=CLOSED_LOST with a stageEntered range. One call instead of paging through GET /api/lead.

count_leads

Параметри запиту · 45

stageTypesstring[]Kind of the current stage: CLOSED_WON for won deals, CLOSED_LOST for lost ones, INCOMING and REGULAR for open ones.Одне з: REGULAR INCOMING CLOSED_WON CLOSED_LOST
cfstring[]—
leadIdsnumber[]—
pipelineIdnumberобовʼязковий—
searchstringобовʼязковий—
nameOfLeadstringобовʼязковийдовжина макс. 150
studentIdnumberобовʼязковий—
reasonForRefusalIdnumberобовʼязковий—
Показати ще 37
reasonForRefusalIdsnumber[]—
managerIdsnumber[]—
hasNoManagerbooleanOnly leads nobody is responsible for.
stageIdsnumber[]Current stage.
sourceOfLeadIdsnumber[]—
createdStartstringCreated from, a school-local calendar day.
createdEndstringCreated until, inclusive: the end of that school-local day.
stageEnteredStartstringMoved into a stage from this school-local day; with stageIds or stageTypes, into one of those stages. "Won this month" is stageTypes=CLOSED_WON with this range.
stageEnteredEndstringMoved into a stage until this school-local day, inclusive.
stageUnchangedSincestringNot moved between stages since this school-local day: leads stuck in their current stage.
notestringобовʼязковий—
studentStatusOfStudentIdnumberобовʼязковий—
studentFirstNamestringобовʼязковий—
studentLastNamestringобовʼязковий—
studentMiddleNamestringобовʼязковий—
studentIsChildstringобовʼязковий—
studentGenderstringобовʼязковийОдне з: MALE FEMALE
studentTeacherIdsnumber[]—
studentManagerIdsnumber[]—
studentReasonForRefusalIdsnumber[]—
studentTeachingProgramIdsnumber[]—
studentClassOfStudentIdsnumber[]—
studentSubscriptionIdsnumber[]—
studentBalanceFromnumber—
studentBalanceTonumber—
studentLessonsLeftFromnumber—
studentLessonsLeftTonumber—
studentNotestringобовʼязковий—
studentHasGroupbooleanобовʼязковий—
studentHasNoGroupbooleanобовʼязковий—
studentHasNoLessonsbooleanобовʼязковий—
studentIsDebtorbooleanобовʼязковий—
studentHasFreeLessonsbooleanобовʼязковий—
studentHasFreeTrialLessonsbooleanобовʼязковий—
studentHasExpiredSubscriptionbooleanобовʼязковий—
studentIsArchivalboolean—
groupBystringобовʼязковийWhat to count leads by; stage keeps the funnel order.Одне з: stage pipeline source manager reasonForRefusal

Відповідь · 200

application/json

statusCodenumberобовʼязковийприклад 200
messagestringобовʼязковий—
dataobject3 поля
omittedRowsnumberRows left out by the limit
totalnumberобовʼязковийRecords matching the filters; a record counted in several rows (a student with two teachers) counts here once.
rowsobject[]обовʼязковий3 поля
idinteger | stringобовʼязковийможе бути nullId of the grouped value (teacher id, stage id, weekday 1-7) or its code (lesson status); null means "no value".
namestringобовʼязковий—
countnumberобовʼязковий—
Помилки400401403429500
curl "https://your-school.rist.pro/api/lead/breakdown" \
  -H "Authorization: Bearer $RIST_API_KEY"
Приклад відповіді · 200
{
  "statusCode": 200,
  "message": "Operation completed successfully",
  "data": {
    "omittedRows": 0,
    "total": 0,
    "rows": [
      {
        "id": 1,
        "name": "string",
        "count": 0
      }
    ]
  }
}
GET

Get lead

/api/lead/{id}

One lead with its pipeline stage, manager, contacts and custom fields.

get_lead

Параметри шляху · 1

idnumberобовʼязковий—

Відповідь · 200

application/json

statusCodenumberобовʼязковийприклад 200
messagestringобовʼязковий—
dataobject13 полів
costOfLeadnumberобовʼязковийможе бути null—
leadIdnumberобовʼязковий—
pipelineIdnumberобовʼязковийможе бути null—
stageIdnumberобовʼязковийможе бути null—
nameOfLeadstringобовʼязковий—
contactsobject[]обовʼязковий3 поля
typestringобовʼязковий—
valuestringобовʼязковий—
labelstringобовʼязковийможе бути null—
notestringобовʼязковийможе бути null—
avatarUrlstringобовʼязковийможе бути null—
boughtWithoutTrialbooleanобовʼязковий—
archivedAtstringобовʼязковийможе бути nullформат YYYY-MM-DDTHH:mm:ss
updatedAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
createdAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
customFieldsobjectдовільні ключі
Помилки400401403429500
curl "https://your-school.rist.pro/api/lead/1" \
  -H "Authorization: Bearer $RIST_API_KEY"
Приклад відповіді · 200
{
  "statusCode": 200,
  "message": "Operation completed successfully",
  "data": {
    "costOfLead": 0,
    "leadId": 1,
    "pipelineId": 1,
    "stageId": 1,
    "nameOfLead": "string",
    "contacts": [
      {
        "type": "string",
        "value": "string",
        "label": "string"
      }
    ],
    "note": "string",
    "avatarUrl": "string",
    "boughtWithoutTrial": false,
    "archivedAt": "2026-11-09T14:30:00",
    "updatedAt": "2026-11-09T14:30:00",
    "createdAt": "2026-11-09T14:30:00",
    "customFields": {}
  }
}
POST

Create lead

/api/lead

Create a lead in a pipeline stage. A manager is assigned automatically if the stage distributes leads.

create_lead

Тіло запиту

application/json · object

studentIdnumberможе бути nullмін. 1
sourceOfLeadIdnumberобовʼязковийможе бути nullмін. 1
reasonForRefusalIdnumberможе бути nullмін. 1
managerIdnumberобовʼязковийможе бути nullмін. 1
pipelineIdnumberобовʼязковиймін. 1
stageIdnumberможе бути nullмін. 1
nameOfLeadstringобовʼязковийдовжина 1–150
contactsobject[]обовʼязковий3 поля
typestringобовʼязковийОдне з: PHONE EMAIL MESSENGER URL
valuestringобовʼязковийдовжина 1–255
labelstringобовʼязковийможе бути nullдовжина макс. 50
avatarUrlstringобовʼязковийможе бути nullдовжина макс. 500
notestringобовʼязковийможе бути nullдовжина макс. 1500
costOfLeadnumberможе бути nullмін. 0
labelsOfStatisticobject[]обовʼязковий2 поля
labelOfStatisticIdnumberобовʼязковиймін. 1
valuestringобовʼязковийдовжина макс. 70
tagIdsnumber[]обовʼязковийможе бути nullмін. 1
customFieldsobjectдовільні ключі

Відповідь · 201

application/json

statusCodenumberобовʼязковийприклад 201
messagestringобовʼязковий—
dataobject13 полів
costOfLeadnumberобовʼязковийможе бути null—
leadIdnumberобовʼязковий—
pipelineIdnumberобовʼязковийможе бути null—
stageIdnumberобовʼязковийможе бути null—
nameOfLeadstringобовʼязковий—
contactsobject[]обовʼязковий3 поля
typestringобовʼязковий—
valuestringобовʼязковий—
labelstringобовʼязковийможе бути null—
notestringобовʼязковийможе бути null—
avatarUrlstringобовʼязковийможе бути null—
boughtWithoutTrialbooleanобовʼязковий—
archivedAtstringобовʼязковийможе бути nullформат YYYY-MM-DDTHH:mm:ss
updatedAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
createdAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
customFieldsobjectдовільні ключі
Помилки400401403429500
curl -X POST "https://your-school.rist.pro/api/lead" \
  -H "Authorization: Bearer $RIST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "studentId": 1,
    "sourceOfLeadId": 1,
    "reasonForRefusalId": 1,
    "managerId": 1,
    "pipelineId": 1,
    "stageId": 1,
    "nameOfLead": "string",
    "contacts": [
      {
        "type": "PHONE",
        "value": "string",
        "label": "string"
      }
    ],
    "avatarUrl": "string",
    "note": "string",
    "costOfLead": 0,
    "labelsOfStatistic": [
      {
        "labelOfStatisticId": 1,
        "value": "string"
      }
    ],
    "tagIds": [
      1
    ],
    "customFields": {}
  }'
Приклад відповіді · 201
{
  "statusCode": 201,
  "message": "Operation completed successfully",
  "data": {
    "costOfLead": 0,
    "leadId": 1,
    "pipelineId": 1,
    "stageId": 1,
    "nameOfLead": "string",
    "contacts": [
      {
        "type": "string",
        "value": "string",
        "label": "string"
      }
    ],
    "note": "string",
    "avatarUrl": "string",
    "boughtWithoutTrial": false,
    "archivedAt": "2026-11-09T14:30:00",
    "updatedAt": "2026-11-09T14:30:00",
    "createdAt": "2026-11-09T14:30:00",
    "customFields": {}
  }
}
PATCH

Update lead

/api/lead/{id}

Change fields of a lead. Send only the fields to change. To move between stages use PATCH /api/lead/stage/{id}.

update_lead

Параметри шляху · 1

idnumberобовʼязковий—

Тіло запиту

application/json · object

sourceOfLeadIdnumberможе бути nullмін. 1
reasonForRefusalIdnumberможе бути nullмін. 1
managerIdnumberможе бути nullмін. 1
pipelineIdnumberмін. 1
stageIdnumberмін. 1
nameOfLeadstringдовжина 1–150
contactsobject[]3 поля
typestringобовʼязковийОдне з: PHONE EMAIL MESSENGER URL
valuestringобовʼязковийдовжина 1–255
labelstringобовʼязковийможе бути nullдовжина макс. 50
avatarUrlstringможе бути nullдовжина макс. 500
notestringможе бути nullдовжина макс. 1500
costOfLeadnumberможе бути nullмін. 0
boughtWithoutTrialboolean—
labelsOfStatisticobject[]2 поля
labelOfStatisticIdnumberобовʼязковиймін. 1
valuestringобовʼязковийдовжина макс. 70
tagIdsnumber[]може бути nullмін. 1
customFieldsobjectдовільні ключі

Відповідь · 200

application/json

statusCodenumberобовʼязковийприклад 200
messagestringобовʼязковий—
dataobject13 полів
costOfLeadnumberобовʼязковийможе бути null—
leadIdnumberобовʼязковий—
pipelineIdnumberобовʼязковийможе бути null—
stageIdnumberобовʼязковийможе бути null—
nameOfLeadstringобовʼязковий—
contactsobject[]обовʼязковий3 поля
typestringобовʼязковий—
valuestringобовʼязковий—
labelstringобовʼязковийможе бути null—
notestringобовʼязковийможе бути null—
avatarUrlstringобовʼязковийможе бути null—
boughtWithoutTrialbooleanобовʼязковий—
archivedAtstringобовʼязковийможе бути nullформат YYYY-MM-DDTHH:mm:ss
updatedAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
createdAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
customFieldsobjectдовільні ключі
Помилки400401403429500
curl -X PATCH "https://your-school.rist.pro/api/lead/1" \
  -H "Authorization: Bearer $RIST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "sourceOfLeadId": 1,
    "reasonForRefusalId": 1,
    "managerId": 1,
    "pipelineId": 1,
    "stageId": 1,
    "nameOfLead": "string",
    "contacts": [
      {
        "type": "PHONE",
        "value": "string",
        "label": "string"
      }
    ],
    "avatarUrl": "string",
    "note": "string",
    "costOfLead": 0,
    "boughtWithoutTrial": false,
    "labelsOfStatistic": [
      {
        "labelOfStatisticId": 1,
        "value": "string"
      }
    ],
    "tagIds": [
      1
    ],
    "customFields": {}
  }'
Приклад відповіді · 200
{
  "statusCode": 200,
  "message": "Operation completed successfully",
  "data": {
    "costOfLead": 0,
    "leadId": 1,
    "pipelineId": 1,
    "stageId": 1,
    "nameOfLead": "string",
    "contacts": [
      {
        "type": "string",
        "value": "string",
        "label": "string"
      }
    ],
    "note": "string",
    "avatarUrl": "string",
    "boughtWithoutTrial": false,
    "archivedAt": "2026-11-09T14:30:00",
    "updatedAt": "2026-11-09T14:30:00",
    "createdAt": "2026-11-09T14:30:00",
    "customFields": {}
  }
}
PATCH

Move lead to stage

/api/lead/stage/{id}

Move a lead to another pipeline stage. Moving to a refusal stage may require a refusal reason.

move_lead_stage

Параметри шляху · 1

idnumberобовʼязковий—

Тіло запиту

application/json · object

stageIdnumberобовʼязковиймін. 1
reasonForRefusalIdnumberможе бути nullмін. 1

Відповідь · 200

application/json

statusCodenumberобовʼязковийприклад 200
messagestringобовʼязковий—
dataobject13 полів
costOfLeadnumberобовʼязковийможе бути null—
leadIdnumberобовʼязковий—
pipelineIdnumberобовʼязковийможе бути null—
stageIdnumberобовʼязковийможе бути null—
nameOfLeadstringобовʼязковий—
contactsobject[]обовʼязковий3 поля
typestringобовʼязковий—
valuestringобовʼязковий—
labelstringобовʼязковийможе бути null—
notestringобовʼязковийможе бути null—
avatarUrlstringобовʼязковийможе бути null—
boughtWithoutTrialbooleanобовʼязковий—
archivedAtstringобовʼязковийможе бути nullформат YYYY-MM-DDTHH:mm:ss
updatedAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
createdAtstringобовʼязковийформат YYYY-MM-DDTHH:mm:ss
customFieldsobjectдовільні ключі
Помилки400401403429500
curl -X PATCH "https://your-school.rist.pro/api/lead/stage/1" \
  -H "Authorization: Bearer $RIST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "stageId": 1,
    "reasonForRefusalId": 1
  }'
Приклад відповіді · 200
{
  "statusCode": 200,
  "message": "Operation completed successfully",
  "data": {
    "costOfLead": 0,
    "leadId": 1,
    "pipelineId": 1,
    "stageId": 1,
    "nameOfLead": "string",
    "contacts": [
      {
        "type": "string",
        "value": "string",
        "label": "string"
      }
    ],
    "note": "string",
    "avatarUrl": "string",
    "boughtWithoutTrial": false,
    "archivedAt": "2026-11-09T14:30:00",
    "updatedAt": "2026-11-09T14:30:00",
    "createdAt": "2026-11-09T14:30:00",
    "customFields": {}
  }
}