/leads Available PII#List leads
Tenant leads in ascending updated_at order, paged by cursor. Archived leads are not returned by default. include_deleted=true currently returns 422 not_supported: deleted leads (tombstones) are not stored. The response contains the contact personal data: every disclosure is recorded in the disclosure log; on RU an IP allowlist and recipient country RU are required (otherwise 403 pii_transfer_not_allowed).
Parameters
| Field | Type | Description |
|---|---|---|
limit | integer optional | In: query. Page size: 1 to 100, default 25. |
cursor | string optional | In: query. The next_cursor value from the previous response. Valid for 24 hours; start over when filters change. |
status | string optional | In: query. Canonical status. |
archived | boolean optional | In: query. true — archived only; default false — non-archived only. |
updated_since | string optional | In: query. Leads updated at or after this moment. ISO 8601: a date or a date-time with a zone. |
updated_after | string optional | In: query. The same, strictly after the moment (for walking on from the last seen one). Not together with updated_since. |
source | string optional | In: query. Exact lead source value. |
include_deleted | boolean optional | In: query. true — also return tombstones {id, deleted_at} of deleted records (kept for 30 days). |
Response body
| Field | Type | Description |
|---|---|---|
data | array<Lead> required | |
next_cursor | string required, may be null | Cursor of the next page; null — the list is exhausted. Valid for 24 hours. |
Examples
curl -X GET 'https://wfacademy.org/api/public/v1/leads' \
-H 'Authorization: Bearer '"$SAPPORT_API_KEY"{
"data": [
{
"id": "EXAMPLE_ID",
"external_id": null,
"external_url": null,
"version": null,
"etag": "string",
"status": "new",
"archived": false,
"archived_reason": null,
"owner": "internal",
"title": null,
"source": null,
"assigned_to": null,
"value": null,
"product_id": null,
"course_slug": null,
"contact": null,
"conversation_id": null,
"attribution": null,
"score": null,
"flags": null,
"intent": null,
"ai_summary": null,
"next_action": null,
"next_action_at": null,
"lost_reason": null,
"qualified_at": null,
"won_at": null,
"lost_at": null,
"last_activity_at": null,
"created_at": "2026-10-11T09:00:00Z",
"updated_at": "2026-10-11T09:00:00Z"
}
],
"next_cursor": "EXAMPLE_CURSOR"
}{
"type": "https://wfacademy.org/developers/errors#scope_missing",
"title": "Scope is missing",
"status": 403,
"code": "scope_missing",
"detail": "EXAMPLE",
"request_id": "req_EXAMPLE"
}Examples are illustrative: the key in them is a placeholder (EXAMPLE), field values are made up.
Possible errors
invalid_api_key wrong_cell integration_inactive tenant_inactive ip_not_allowed feature_not_in_plan rate_limited wallet_suspended service_unavailable internal_error scope_missing pii_transfer_not_allowed validation_failed