Skip to Content
OneKYC
Tenant API (KYC)

Metrics and analytics

Last updated:

The Tenant API exposes the metrics and analytics data shown on the admin panel dashboard. Every endpoint in this section is read-only and requires the metrics:read scope.

Core metrics

Returns aggregated statistics for the requested period (verification counts, approval/rejection rates, etc.).

GET
/v1/kyc/metrics/stats

Authorization

ApiKeyAuth
headerAuthorization<token>

HMAC-SHA256 Credential=<key_id>, Signature=<hex_signature>. SignedHeaders=x-timestamp is optional. Requires X-Timestamp header.

Query Parameters

period?string

7d, 30d, 90d, 12m (default 30d)

flow_id?string

Filter by flow UUID

Header Parameters

X-Timestamp*string

Unix timestamp (seconds, max 5 min drift)

Response Body

Stats

*/*
  1. response
data?
success?boolean
Example Request
curl -X GET 'https://api.onekyc.io/tenant/v1/kyc/metrics/stats' \  -H 'X-Timestamp: string'
Example Response
{  "success": true,  "data": {    "approval_rate": 0,    "approval_rate_change": 0,    "avg_processing_time": 0,    "avg_processing_time_change": 0,    "completed_verifications": 0,    "completed_verifications_change": 0,    "pending_reviews": 0,    "total_sessions": 0,    "total_sessions_change": 0  }}

Charts and time series

Returns data for charts — time series with the requested granularity (hour, day, week).

GET
/v1/kyc/metrics/chart

Authorization

ApiKeyAuth
headerAuthorization<token>

HMAC-SHA256 Credential=<key_id>, Signature=<hex_signature>. SignedHeaders=x-timestamp is optional. Requires X-Timestamp header.

Query Parameters

period?string

7d, 30d, 90d, 12m

flow_id?string

Filter by flow UUID

Header Parameters

X-Timestamp*string

Unix timestamp (seconds, max 5 min drift)

Response Body

Chart data

*/*
  1. response
data?array<>
success?boolean
Example Request
curl -X GET 'https://api.onekyc.io/tenant/v1/kyc/metrics/chart' \  -H 'X-Timestamp: string'
Example Response
{  "success": true,  "data": [    {      "approved": 0,      "date": "string",      "pending": 0,      "rejected": 0,      "total": 0    }  ]}

Conversion funnel

Returns conversion-funnel data across verification stages (from link creation to flow completion).

GET
/v1/kyc/metrics/funnel

Authorization

ApiKeyAuth
headerAuthorization<token>

HMAC-SHA256 Credential=<key_id>, Signature=<hex_signature>. SignedHeaders=x-timestamp is optional. Requires X-Timestamp header.

Query Parameters

period?string

7d, 30d, 90d, 12m

flow_id?string

Filter by flow UUID

Header Parameters

X-Timestamp*string

Unix timestamp (seconds, max 5 min drift)

Response Body

Funnel steps

*/*
  1. response
data?array<>
success?boolean
Example Request
curl -X GET 'https://api.onekyc.io/tenant/v1/kyc/metrics/funnel' \  -H 'X-Timestamp: string'
Example Response
{  "success": true,  "data": [    {      "count": 0,      "dropoff": 0,      "label": "string",      "percentage": 0,      "step": 0    }  ]}

Activity

Returns user and operator activity data for the requested period.

GET
/v1/kyc/metrics/activity

Authorization

ApiKeyAuth
headerAuthorization<token>

HMAC-SHA256 Credential=<key_id>, Signature=<hex_signature>. SignedHeaders=x-timestamp is optional. Requires X-Timestamp header.

Query Parameters

limit?integer

Max items (1-50, default 10)

Header Parameters

X-Timestamp*string

Unix timestamp (seconds, max 5 min drift)

Response Body

Activity items

*/*
  1. response
data?array<>
success?boolean
Example Request
curl -X GET 'https://api.onekyc.io/tenant/v1/kyc/metrics/activity' \  -H 'X-Timestamp: string'
Example Response
{  "success": true,  "data": [    {      "id": "string",      "message": "string",      "metadata": {        "property1": null,        "property2": null      },      "session_id": "string",      "timestamp": "string",      "type": "session_created"    }  ]}

Real-time metrics

Returns operational metrics in real time: number of active sessions, sessions queued for review, and similar live data.

GET
/v1/kyc/metrics/realtime

Authorization

ApiKeyAuth
headerAuthorization<token>

HMAC-SHA256 Credential=<key_id>, Signature=<hex_signature>. SignedHeaders=x-timestamp is optional. Requires X-Timestamp header.

Header Parameters

X-Timestamp*string

Unix timestamp (seconds, max 5 min drift)

Response Body

Realtime stats

*/*
  1. response
data?
success?boolean
Example Request
curl -X GET 'https://api.onekyc.io/tenant/v1/kyc/metrics/realtime' \  -H 'X-Timestamp: string'
Example Response
{  "success": true,  "data": {    "active_sessions": 0,    "average_time_last_hour": 0,    "completed_last_hour": 0,    "error_rate_last_hour": 0,    "failed_last_hour": 0,    "pending_review": 0,    "sessions_last_hour": 0  }}

Data export

Exports metrics data in a structured format for downstream processing and analysis.

GET
/v1/kyc/metrics/export

Authorization

ApiKeyAuth
headerAuthorization<token>

HMAC-SHA256 Credential=<key_id>, Signature=<hex_signature>. SignedHeaders=x-timestamp is optional. Requires X-Timestamp header.

Query Parameters

period?string

7d, 30d, 90d, 12m

flow_id?string

Filter by flow UUID

Header Parameters

X-Timestamp*string

Unix timestamp (seconds, max 5 min drift)

Response Body

CSV file

response?stringtext/csv
Example Request
curl -X GET 'https://api.onekyc.io/tenant/v1/kyc/metrics/export' \  -H 'X-Timestamp: string'
Example Response
"string"

Note. Real-time metrics are also available through a WebSocket connection in the admin panel. The API endpoints return a snapshot at request time.

On this page