---
title: "Start KYC verification"
description: "Initiates KYC verification for a customer."
protocol: rest
method: POST
endpoint: "/v1/risk/start-kyc"
baseUrl: "https://api.gravv.xyz"
group: "Risk (deprecated)"
deprecated: true
auth:
  label: "Api-Key"
  name: "Api-Key"
  in: header
---

# Start KYC verification

<span class="api-deprecated-badge">Deprecated</span>

<Endpoint method="POST" path="/v1/risk/start-kyc" />

Initiates KYC verification for a customer.

## Headers

<ParamField name="Idempotency-Key" header="Idempotency-Key" type="string" required>
  Required for POST requests. Reuse only for an identical retry.
</ParamField>

## Request Body

<ParamField name="customer_id" body="customer_id" type="string" required>
  Customer ID to start KYC for
</ParamField>

### Request Examples

<RequestExample>

```json title="KYCRequest"
{
  "customer_id": "d2581d3c-7c55-4607-9717-546694194636"
}
```

</RequestExample>

## Responses

| Status | Description |
| --- | --- |
| `200` | KYC process started successfully |

### 200 response

<ResponseField name="data" type="object" required>

  <Expandable title="properties">
    <ResponseField name="review_status" type="string">
      Applicant review status from the verification process.
    </ResponseField>

    <ResponseField name="status" type="string" required>
      Request status
    </ResponseField>

    <ResponseField name="web_url" type="string" required>
      URL to complete the KYC process
    </ResponseField>

  </Expandable>
</ResponseField>

<ResponseField name="error" type="any" required>
  Error information if the request failed
</ResponseField>

<ResponseExample>

```json title="Response"
{
  "data": {
    "status": "success",
    "web_url": "https://verify.gravv.xyz/websdk/p/example_token"
  },
  "error": null
}
```

</ResponseExample>

## Authorization

- **ApiKeyAuth**
