List entities
List entity customers in your organisation. Use this as a polling
source — pass updated_since so each poll only returns records
that changed since the previous run.
Pagination is cursor-based: pass the next_cursor value from the
previous response as cursor on the next call.
GET /customers — cursor pagination,
updated_since polling, opt-in total_count — with two differences:
statusfilters on the entity’s KYB status (kyb_status), since entities verify via KYB rather than KYC.typefilters by entity type (COMPANY,TRUST,PARTNERSHIP,SMSF,OTHER).
Authorizations
Bearer API key issued from Settings → Developers in your
Instant Compliance organisation. Format: ic_live_….
Query Parameters
Number of records to return (1–100).
1 <= x <= 100Opaque cursor from the previous response's next_cursor.
Filter by KYB status (entities verify via KYB).
NOT_STARTED, PENDING, IN_PROGRESS, VERIFIED, FAILED, NOT_REQUIRED, AWAITING_RESUBMISSION Filter by AML compliance status.
NOT_SCREENED, IN_PROGRESS, CLEAR, NEEDS_REVIEW, RESOLVED Filter by entity type.
Entity customer types accepted by /entities. SMSF is treated
as a type of trust and OTHER as a company for verification
purposes, but the type you post round-trips back unchanged.
Immutable after creation.
COMPANY, TRUST, PARTNERSHIP, SMSF, OTHER ISO-8601 timestamp. Return only entities updated after this time.
Lookup by your CRM identifier.
Comma-separated list of opt-in response fields. Currently the
only supported value is total_count, which adds an exact
count of the filtered set to the response envelope. Costs
an extra COUNT(*) query — omit it on hot polling loops.
total_count Response
Paginated entity list.
Always "list" for paginated envelopes.
list True if at least one more page exists. Use as the loop condition.
Pass as cursor on the next request, or null when no more pages.
The limit echoed back after defaulting/clamping (1–100, default 50).
Total records matching the filter set (not the page). Only present
when the request included include=total_count.

