Skip to content

Create a programme

POST/v1/programs

Requires an API client bearer token.

Creates a card programme and snapshots its module configuration. Requires an Idempotency-Key header. Emits programme.created with the full module snapshot.

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

namestringrequired
home_regionstringrequired
modulesobject

Non-toggleable keys are accepted but persisted false

+ show properties
ledgerboolean
managed_authorizationboolean

true = M2 (we decide); false = M2b delegated

kycboolean
fraudboolean
three_dsboolean
tokenizationboolean
disputesboolean
crypto_settlementboolean
delegated_auth_urlstring (uri)
refund_float_accountsobject

Per-mode platform settlement account a refund credit is drawn from. Absent ⇒ refunds decline.

+ show properties
teststring
livestring

Example

curl -X POST https://api.rigid.fi/v1/programs \
  -H "Authorization: Bearer $RIGID_API_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "name": "string",
  "home_region": "string"
}'

Responses

201

Created programme.

idstringrequired
namestringrequired
home_regionstringrequired
modulesobjectrequired
+ show properties
ledgerbooleanrequired
managed_authorizationbooleanrequired
kycbooleanrequired
fraudbooleanrequired
three_dsbooleanrequired
tokenizationbooleanrequired
disputesbooleanrequired
crypto_settlementbooleanrequired
delegated_auth_urlstring | nullrequired
status"draft" | "in_review" | "live" | "suspended"required
created_atstringrequired
refund_float_accountsobject

Per-mode platform settlement account a refund credit is drawn from. Absent ⇒ refunds decline.

+ show properties
teststring
livestring
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