Get the caller’s current application
Returns the authenticated user’s most recent KYC application. For members of a self-onboarding organization, a first retrieval with no application provisions the merchant prospect and an INDIVIDUAL application instead of returning 404.
Authorization
oauth2 Create a client with POST /v1/oauth/clients, then exchange its credentials for an access token. AUTHORIZATION_CODE clients act on behalf of a signed-in user and always use PKCE; CLIENT_CREDENTIALS clients act as themselves. A client may only be granted scopes its creator already holds — read the grantable list from GET /v1/oauth/clients/scopes.
In: header
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v1/kyc/applications/current"{ "id": "550e8400-e29b-41d4-a716-446655440000", "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5", "organization_id": "cowdi", "user_type": "INDIVIDUAL", "merchant_type": "SOLE_PROPRIETOR", "status": "DRAFT", "source": "USER", "documents": [ { "id": "3fa2c1d4-8b8e-4c9a-9c9e-1f2e3a4b5c6d", "document_type": "NATIONAL_ID", "document_sub_type": "string", "document_number": "string", "expiry_date": "string", "presigned_url": "string", "uploaded_at": "2026-06-04T10:20:00.000Z" } ], "verification": { "provider": "SMILE_ID", "provider_job_id": "string", "result": "PASSED", "confidence_score": 0, "completed_at": "2026-06-04T10:20:00.000Z" }, "verification_reason_code": "string", "external_reason_code": "DOCUMENT_IMAGE_UNUSABLE", "external_reason": "Part of your ID document was cut off. Retake the photo with all four corners of the document inside the frame.", "resubmission_count": 0, "force_new_enroll": true, "reapply_blocked_until": "2026-06-04T10:20:00.000Z", "submitted_at": "2026-06-04T10:20:00.000Z", "created_at": "2026-06-04T10:20:00.000Z", "updated_at": "2026-06-04T10:20:00.000Z"}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}{ "code": "INVALID_PARAMS", "description": "user_id must be a UUID", "identifier": "string", "invalid_params": [ { "path": "user_id", "reason": "must be a UUID", "sub_code": "string" } ]}Create or get the caller’s application POST
Creates a KYC application for the authenticated user, or returns the existing one if a non-terminal application already exists.
Get an application GET
Returns the KYC application matching `id`. The caller sees only applications owned by their own token: the application’s `organization_id` and owner must match the caller’s token. Returns 404 when no such application exists, or when it belongs to a different owner or organization. Use GET /applications/{id}/status for a lighter poll, or GET /applications/{id}/verification for what to capture next.