> ## 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.

# Get Visual Validation Result

> Gets the real-person material group produced by visual validation.

Poll this Action after the H5 visual validation flow. A successful result returns the TokenLab material group ID for the verified person.

## Endpoint And Authentication

```text theme={null}
POST https://api.tokenlab.sh/api/v3?Action=GetVisualValidateResult&Version=2024-01-01
Authorization: Bearer <TOKENLAB_API_KEY>
Content-Type: application/json
```

Send the `BytedToken` returned by [Create Visual Validation Session](/api-reference/video/create-visual-validation-session). If you set `ProjectName` during creation, send the same case-sensitive value here; otherwise omit it or use `default`.

The result may not be ready immediately after the browser callback. Retry the same request until `Result.GroupId` is returned or the 30-minute `BytedToken` expires. Repeating a successful request with the same token returns the same mapped `GroupId`.

Use the returned `GroupId` as the `group_id` when creating `liveness_face` material assets.

## Example Request

```bash theme={null}
curl 'https://api.tokenlab.sh/api/v3?Action=GetVisualValidateResult&Version=2024-01-01' \
  -H "Authorization: Bearer $TOKENLAB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"BytedToken":"ZXhhbXBsZS10b2tlbg","ProjectName":"default"}'
```

## Example Response

```json theme={null}
{
  "ResponseMetadata": {
    "RequestId": "req_def456",
    "Action": "GetVisualValidateResult",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "GroupId": "group-20260720123456-real1"
  }
}
```

Errors use `ResponseMetadata.Error.Code` and `ResponseMetadata.Error.Message`. A success response contains `ResponseMetadata` and `Result`; it does not use the response envelope from TokenLab's other `/v1` APIs.
