Checks

Launch a draft report

POST
/api/v1/reports/{reportId}/launch

Scope: reports:create

Starts a draft. This is the billable moment.

Returns 409 when the report cannot launch in its current state — for example when consent or payment is still outstanding.

Authorization

AuthorizationBearer <token>

Use Authorization: Bearer vrf_live_... or vrf_test_....

In: header

Path Parameters

reportId*string

Report identifier.

Formatuuid

Response Body

application/json

application/problem+json

curl -X POST "https://example.com/api/v1/reports/497f6eca-6276-4993-bfeb-53cbbbba6f08/launch"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "status": "DRAFT",  "subject": {    "subjectType": "INDIVIDUAL",    "fullName": "Jane Wanjiku Doe",    "firstName": "string",    "middleName": "string",    "lastName": "string",    "idNumber": "36901234",    "registrationNumber": "PVT-7XUQ8KL",    "email": "user@example.com",    "phone": "+254712345678",    "dateOfBirth": "2019-08-24",    "country": "KE"  },  "checksRequested": [    "IDENTITY"  ],  "checkResults": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "checkName": "IDENTITY",      "status": "PENDING",      "summary": "string",      "riskLevel": "LOW",      "score": 0,      "evidence": {},      "completedAt": "2019-08-24T14:15:22Z"    }  ],  "riskScore": 0,  "riskLevel": "LOW",  "consentState": {    "status": "NOT_REQUIRED",    "consentUrl": "http://example.com",    "expiresAt": "2019-08-24T14:15:22Z"  },  "paymentState": {    "status": "NOT_REQUIRED",    "amount": {      "amount": 0.1,      "currency": "KES"    },    "paidAt": "2019-08-24T14:15:22Z"  },  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z"}