Skip to content

Create a cardholder

POST/v1/cardholders

Requires an API client bearer token.

Creates a cardholder under the given programme. Requires an Idempotency-Key header. Emits cardholder.created.

Parameters

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

programme_idstring (uuid)required
full_namestringrequired
emailstring (email)required
countrystringrequired

Example

curl -X POST https://api.rigid.fi/v1/cardholders \
  -H "Authorization: Bearer $RIGID_API_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "programme_id": "uuid",
  "full_name": "string",
  "email": "email",
  "country": "string"
}'

Responses

201

Created cardholder.

idstring (uuid)required
programme_idstring (uuid)required
full_namestringrequired
emailstringrequired
phonestring | nullrequired
countrystringrequired
kyc_state"unverified" | "pending" | "passed" | "failed" | "in_review"required
attestedbooleanrequired
attested_bystring | nullrequired
attested_atstring | nullrequired
kyc_completebooleanrequired
funding_account_idstring | nullrequired
funding_currencystring | nullrequired
created_atstringrequired
400

Validation error

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
401

Authentication required

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
403

Forbidden

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
409

Idempotency-Key reused with a different payload

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
500

Internal server error

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring