Skip to content

Attach applicant data to a KYC check

POST/v1/kyc/checks/{id}/submissions

Requires an API client bearer token.

Attaches applicant data to a collecting case. Data is stored under purpose-bound custody and referenced by token. The case advances to evaluation once the programme's policy has the inputs it requires. Callable by `user` or `admin` callers, which includes API clients (OAuth2 client-credentials) — programme-manager integrations are the intended, API-only intake path.

Parameters

Path parameters

NameRequiredDescription
idrequired

Header parameters

NameRequiredDescription
Idempotency-Keyrequired

Client-chosen. An identical retry with the same key returns the stored response; reusing the key with a different payload returns 409.

Request body

given_namestring
family_namestring
date_of_birthstring
nationalitystring
document_typestring
document_numberstring
document_expirystring
document_issuing_statestring
document_mrzstring
address_line1string
address_postcodestring
address_countrystring

Example

curl -X POST https://api.rigid.fi/v1/kyc/checks/{id}/submissions \
  -H "Authorization: Bearer $RIGID_API_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "given_name": "string",
  "family_name": "string",
  "date_of_birth": "string",
  "nationality": "string",
  "document_type": "string",
  "document_number": "string"
}'

Responses

200

Submission accepted.

idstringrequired
cardholder_idstringrequired
state"pending" | "in_review" | "passed" | "failed" | "expired"required
vendorstringrequired
screeningobjectrequired
+ show properties
sanctions"clear" | "hit" | "pending"required
pep"clear" | "hit" | "pending"required
completed_atstring | nullrequired
created_atstringrequired
expires_atstring | nullrequired
reason_codesarray of string
400

Validation error

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
401

Authentication required

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
403

Forbidden

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
404

No such check

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
409

The case was updated concurrently; retry the submission

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
500

Internal server error

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring