Two customer types, the same endpoints
Individual (KYC)
Identity fields, a questionnaire and custom fields, then a photo ID and a selfie.
Business (KYB)
A company plus one entry per beneficial owner, company documents, and each owner’s documents.
shareToken instead of the full payload.
Base URL
Every endpoint lives under
/api/v0/customer.
The testing guide gives the local host and says the QA host comes from the
backend team.
https://qa-api.endl.xyz is used here for consistency with the
rest of this documentation — confirm it before pointing an integration at it.Authentication
One header. There is no login step and no secret to send.401 Authentication Failed!. A key without the
onboarding permission returns 403 on every call.
Content types
application/json
Create, update, get, list, kyc-link and delete. Any other content type returns
415.multipart/form-data
A file part named
document, plus text form fields.Rate limiting
Each partner has a per-minute cap. Exceeding it returns429 and the request is
not processed — retry in the next minute window.
Correlation id
Every response carries anX-Request-ID header. Log it, and quote it when
reporting a problem so the backend can trace that exact request.
Validate everything, then create
On create and update the whole payload — identity, questionnaire and custom fields — is validated before anything is written. If a single field is wrong the request is rejected with400 and nothing is created. It is all-or-nothing, so a
failed create leaves no partial customer behind.