solarOS Organization API

Organization API

List Leads

Lists Leads for the authenticated organization with cursor pagination, endpoint-declared filters and sorting, exact custom Field filters using customFields.<savedIdentity>, hydrated customFields, and External References. Supply externalSystem, externalObject, and externalId together to filter by a canonical External Reference. Required scope: leads:read.

/api/v1/leads

Lists Leads for the authenticated organization with cursor pagination, endpoint-declared filters and sorting, exact custom Field filters using customFields.<savedIdentity>, hydrated customFields, and External References. Supply externalSystem, externalObject, and externalId together to filter by a canonical External Reference. Required scope: leads:read.

List Leads. Use an organization API key with leads:read. Check the response envelope and meta.requestId before triggering dependent workflow steps.

Required scopes

leads:read

Parameters

NameInTypeDescription
limitqueryintegerMaximum number of Leads to return. Values above 100 are capped at 100.
cursorquerystringOpaque pagination cursor from the previous response meta.nextCursor value.
statusqueryNEW | CONTACTED | QUALIFIED | UNQUALIFIED | CONVERTEDFilter the list to Leads with a specific lifecycle status.
sourceIdquerystringFilter Leads by Lead Source id.
campaignIdquerystringFilter Leads by Campaign id.
salesTypeIdquerystringFilter Leads by one assigned Sales Type id.
ownerIdquerystringFilter Leads by owner Team Member id.
sortByquerycreatedAt | updatedAt | statusLead field used for ordering the list response.
sortDirqueryasc | descSort direction for the selected sortBy field.
externalSystemquerystringExternal Reference system filter. Supply with externalObject and externalId for exact reconciliation lookup.
externalObjectquerystringExternal Reference object filter. Supply with externalSystem and externalId.
externalIdquerystringExternal Reference id filter. Supply with externalSystem and externalObject.

Request body

This endpoint does not accept a JSON request body.

Responses

200

Lead list envelope

#/components/schemas/OrgApiListEnvelope

400

Unsupported filter or sort

#/components/schemas/OrgApiError

401

Missing or invalid organization API key

#/components/schemas/OrgApiError

402

Organization billing access or an endpoint-specific business quota denied the request

#/components/schemas/OrgApiError

403

Missing leads:read scope

#/components/schemas/OrgApiError

429

Rate limit exceeded

#/components/schemas/OrgApiError

Errors

400 Unsupported filter or sort401 Missing or invalid organization API key402 Organization billing access or an endpoint-specific business quota denied the request403 Missing leads:read scope429 Rate limit exceeded

Static examples

curl -X GET "$SOLAROS_BASE_URL/api/v1/leads" \
  -H "Authorization: Bearer $SOLAROS_API_KEY"