Skip to content

Get the KYC policy editor draft for a programme and flow

GET/v1/kyc/policy/draft

Requires an API client bearer token.

Reads the SCRATCH policy-editor draft for a (tenant, mode, programme, flow) — no policy version is minted and no audit trail records draft activity; only `PolicyDraftStore`'s own row is upserted in place. The response includes `composed`/`flow`, a live preview of exactly what publishing this draft would mint against the CURRENT active policy right now — recomputed on every read, never stored. `latest_version` versus `base_version` signals staleness: the active policy moved on since this draft was first opened when the two differ. Requires the programme_admin role, like the write API.

Parameters

Query parameters

NameRequiredDescription
programme_idrequired
flow_keyoptional

Example

curl https://api.rigid.fi/v1/kyc/policy/draft \
  -H "Authorization: Bearer $RIGID_API_TOKEN"

Responses

200

The programme's editor draft, composed against the current active policy.

programme_idstringrequired
flow_keystringrequired
definitionobjectrequired
+ show properties
required_signalsarray of stringrequired
selfie_capture"any" | "controlled_only"
accepted_document_typesarray of "passport" | "national_id" | "residence_permit" | "driving_licence"
step_orderarray of "details" | "document" | "selfie"
required_fieldsarray of string
optional_fieldsarray of string
field_orderarray of string
field_configobject
+ show properties

No properties.

rulesobject | null
+ show properties
min_ageinteger
allowed_nationalitiesarray of string
base_versionintegerrequired
latest_versionintegerrequired
updated_atstringrequired
composedobjectrequired
+ show properties
required_inputsarray of stringrequired
required_signalsarray of stringrequired
bandsobjectrequired
+ show properties
approve_at_or_abovenumberrequired
reject_belownumberrequired
weightsobjectrequired
+ show properties

No properties.

provenance_weightsobject
+ show properties
face_matchobjectrequired
+ show properties
controllednumberrequired
submittednumberrequired
selfie_capture"any" | "controlled_only"
accepted_document_typesarray of "passport" | "national_id" | "residence_permit" | "driving_licence"
refer_onarray of stringrequired
reject_onarray of stringrequired
ttl_secondsintegerrequired
retention_secondsintegerrequired
step_orderarray of "details" | "document" | "selfie"
required_fieldsarray of string
optional_fieldsarray of string
field_orderarray of string
field_configobject
+ show properties

No properties.

rulesobject
+ show properties
min_ageinteger
allowed_nationalitiesarray of string
flowobjectrequired
+ show properties
stepsarray of "details" | "document" | "selfie"required
fieldsarray of objectrequired
+ show properties
keystringrequired
requiredbooleanrequired
locked_byarray of string
input"text" | "dropdown" | "date"
hintstring
optionsarray of object
+ show properties
valuestringrequired
labelstring
rulesobjectrequired
+ show properties
min_ageinteger
allowed_nationalitiesarray of string
capabilitiesobjectrequired
+ show properties
controlled_capturebooleanrequired
document_extractionbooleanrequired
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 draft for this programme/flow

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring
500

Internal server error

typestringrequired
titlestringrequired
statusintegerrequired
detailstring
instancestring