application
Identifiers and outcomes for one applicant’s pass through one flow.
{ "application": { "form": "YOUR_FORM_SLUG", "id": 100002, "no": "COK00100002", "slug": "YOUR_APPLICATION_SLUG", "submitted_at": "2026-08-26T09:51:48.165780+00:00", "status": "complete", "other_status": { "ekyc": "pass" } }}Fields
Section titled “Fields”| Field | Type | Notes |
|---|---|---|
id | integer | Internal application ID. Note that
Get application info exposes this same
value as data.id — not as data.application.id, which is a different
number. |
no | string | Human-readable application number. Derived as COK00 + zero-padded id, so
it is not an independent identifier. Quote it to UpPass support. |
form | string | The form_slug this application belongs to. |
slug | string | Application slug — your correlation key. |
status | string |
|
other_status | object<OtherStatus> | Per-check outcomes for the application. |
submitted_at | stringnullabledate-time | When the applicant submitted. This — not event.created_at — is the
submission time. |
status
Section titled “status”Overall lifecycle state.
| Value | Meaning |
|---|---|
incomplete |
Created, not yet submitted. Nothing has been verified. |
complete |
Submitted. Verification results are meaningful. |
expired |
The form expired without submission. |
other_status
Section titled “other_status”Per-check outcomes, keyed by status column.
{ "ekyc": "pass"}ekyc is the only key in the contract
Section titled “ekyc is the only key in the contract”ekyc is always present and always means the same thing: the document scan and the
liveness check, combined, with the face-comparison score folded in.
| Value | Meaning |
|---|---|
pass |
Both passed, and the face-comparison score is 70 or above |
need_review |
Both passed, but the face-comparison score is 61–69 — route to a human |
fail |
Either check failed, or the face-comparison score is 60 or below |
pending |
The checks have not completed |
Every other key in this object is a status column configured in your workspace’s Decision Flow. Its name, its values, and whether it appears at all are yours to define — so nothing about them can be specified here, and none of them are safe to hard-code against unless you configured them yourself.
submitted_at
Section titled “submitted_at”When the applicant submitted. null while status is incomplete.
This — not event.created_at — is the submission time, and half of the recommended
idempotency key.