Skip to main content
POST
/
api
/
kyc
/
create
/
{kyc_type}
curl --request POST \
  --url https://api.starkfi.io/api/kyc/create/verify_public_kyc \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api_key>' \
  --data '{"email":"user@example.com"}'
{
  "statusCode": 201,
  "success": true,
  "status": "kyc_session_created",
  "message": "KYC session created",
  "data": {
    "success": true,
    "message": "didit_create_kyc_session",
    "session": {
      "session_id": "string",
      "session_url": "https://..."
    }
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.starkfi.io/llms.txt

Use this file to discover all available pages before exploring further.

x-api-key
string
required
Your StarkFi API key when required by your environment.
kyc_type
string
required
Verification flow. Use verify_public_kyc for the public Didit integration.
email
string
required
Same email used in prepare and OTP. Must be email-verified before this call succeeds.
curl --request POST \
  --url https://api.starkfi.io/api/kyc/create/verify_public_kyc \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api_key>' \
  --data '{"email":"user@example.com"}'
{
  "statusCode": 201,
  "success": true,
  "status": "kyc_session_created",
  "message": "KYC session created",
  "data": {
    "success": true,
    "message": "didit_create_kyc_session",
    "session": {
      "session_id": "string",
      "session_url": "https://..."
    }
  }
}

Response

data
object
Payload returned by the KYC session builder. Commonly includes session with identifiers and a hosted session_url when a new flow is issued. Exact fields may vary when a session already exists or the user is already approved.