> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tokenlab.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Real-Person Verification Session

> Creates a TokenLab real-person material verification H5 session.

Create a short-lived verification session and redirect your user to the returned H5 link. TokenLab returns only neutral fields: `session_id`, `verification_token`, `h5_link`, `callback_url`, `expires_in`, and `language`.

The session, token, and H5 link expire after 120 seconds. When the H5 flow completes, TokenLab redirects to your original `callback_url` with these query parameters:

| Parameter             | Meaning                                 |
| --------------------- | --------------------------------------- |
| `session_id`          | TokenLab verification session ID.       |
| `verification_token`  | Opaque token used to bind the result.   |
| `verification_status` | `succeeded` or `failed`.                |
| `result_code`         | Result code for your application logic. |

If `verification_status` is `succeeded`, call [Bind Real-Person Verification Result](/de/api-reference/video/bind-real-person-verification-result). The [test console](https://tokenlab.sh/dashboard/seedance-assets) can be used to verify callback handling before you wire the flow into your product.

## Example Request

```bash theme={null}
curl https://api.tokenlab.sh/v1/videos/assets/visual-validation-sessions \
  -H "Authorization: Bearer $TOKENLAB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"callback_url":"https://yourapp.example.com/seedance/callback","language":"en"}'
```

## Example Response

```json theme={null}
{
  "object": "seedance.visual_validation_session",
  "session_id": "svv_abc123",
  "verification_token": "svvt_def456",
  "h5_link": "https://verify.example.com/h5?lng=en",
  "callback_url": "https://yourapp.example.com/seedance/callback",
  "expires_in": 120,
  "language": "en"
}
```
