EzVerify Console

Sign in

Access your developer dashboard.

{{forgotMsg}}

{{navLabel}}

{{verified?'Verified':'Pending'}}
Requests · {{summary.period}}
{{fmt(summary.combined?.requests)}}
across {{(summary.by_service||[]).length}} services
Pages processed
{{fmt(summary.combined?.pages)}}
{{quotaPct}} of quota
Active API keys
{{activeKeys}}
{{apps.length}} app{{apps.length===1?'':'s'}}
Est. due · {{billing.period}}
₹{{fmt(billing.total_due_inr)}}
{{billing.plan}} · ₹{{inr(billing.base_paise)}}/mo base · {{billing.overage_pages>0?fmt(billing.overage_pages)+' overage pages':'no overage'}}

No usage yet this period

Charts light up after your first API call. Try a live demo in the Playground.

Pages by service

Billing period {{summary.period}}

Request mix

{{svcLabel(s.service)}} {{fmt(s.requests)}} req
{{svcLabel(s.service)}}
{{fmt(s.pages)}}
pages
{{fmt(s.requests)}}
requests

Applications

Each app has its own API keys and service subscriptions.

No apps yet

Create your first app above to mint an API key and start calling the KYC APIs.

{{a.name}}
{{svcLabel(s)}}
API Keys
Your new API key
Shown once — copy and store it securely now. You won't see the full key again.
{{mintedKey.key}}
{{mask(k.key)}} {{k.status}}
No keys yet — mint one to start calling the API.
Service catalog
{{svcLabel(svc.id)}}Coming soon
{{svc.desc}}
View details →
Subscribed Awaiting approval

{{svcLabel(detailSvc)}}

{{detailCat.desc}}

Create an app first to subscribe.

Pricing

₹{{((detailInfo.price_per_page_paise||0)/100).toFixed(2)}} / page
Requires approval
This service isn't available for your account — contact support@ezfinanz.com.

Billed per processed page against your plan's included quota.

Endpoints

{{e[0]}} {{e[1]}}

Try it

{{d.title}}
{{d.description}}

No playground demos for this service yet.

Usage

Metered requests and billable pages per endpoint.

Daily volume

{{(usageFrom||usageTo)?'Selected range':'Last 30 days'}}

No usage in this range

Make an API call or widen the date filter.

Per-endpoint detail

{{(usageFrom||usageTo)?'Selected range':'All time'}}
Day (UTC)AppServiceEndpointRequestsPages
{{u.day}} {{appName(u.client_id)}} {{svcLabel(u.service)}} {{epLabel(u.endpoint)}} {{fmt(u.requests)}} {{fmt(u.pages)}}

No usage recorded for this filter

Requests made with your API keys appear here within a minute.

Current period

{{billing.period}}

{{billing.plan}} plan
Pages used {{fmt(billing.used_pages)}} / {{fmt(billing.included_pages)}}
{{fmt(billing.overage_pages)}} pages over included quota
Base
₹{{inr(billing.base_paise)}}
Overage
₹{{inr(billing.overage_paise)}}
{{fmt(billing.overage_pages)}} pg
Total due
₹{{fmt(billing.total_due_inr)}}
Hard quota reached — upgrade your plan to continue.

Plans

{{p.name}}Current ₹{{inr(p.monthly_price_paise)}}
{{fmt(p.included_pages)}} pages · {{p.rate_per_min}}/min

Cost breakdown by service

ServiceSharePagesOverage
No metered usage this period yet — the per-service breakdown appears with your first billable call.
{{svcLabel(s.service)}}
{{s.share_pct}}%
{{fmt(s.pages)}} ₹{{inr(s.overage_paise)}}

Playground

Try every service live with bundled synthetic specimens — no real PII involved.

Runs live against your API key — requests count toward usage.

Playground demos unavailable

Demos load from the platform API — refresh the page or try again shortly.

{{d.title}}
{{svcLabel(d.service)}}

{{d.description}}

Uses a bundled synthetic specimen image.
Masked output — synthetic specimen
Masked output — synthetic specimen · click to open full size
Response JSON
{{pretty(pgResults[d.id].response)}}

Request logs

Recent API traffic. No PII is stored in logs.

Success rate
{{logStats.successPct}}%
of last {{logs.length}} requests
Errors
{{logStats.errors}}
status ≥ 400
Median latency
{{fmt(logStats.median)}}ms
p50 · took_ms
p95 latency
{{fmt(logStats.p95)}}ms
tail · took_ms
Time (IST)ServiceEndpointStatusIPms
{{fmtTs(l.ts)}} {{svcLabel(l.service)}} {{epLabel(l.endpoint)}} {{l.status}} {{l.ip}} {{l.took_ms===0?'<1':l.took_ms}}

No requests logged for this filter

Live API traffic shows up here as soon as your keys make calls.

API reference — one unified doc

Every endpoint across all services lives under one base URL: {{apiBase}}, path /v1/<resource>/<action>.

Endpoint map

POST /v1/aadhaar/mask
POST /v1/match/name
POST /v1/aadhaar/extract
POST /v1/match/address
POST /v1/aadhaar/detect
POST /v1/match/person
POST /v1/aadhaar/process
POST /v1/aml/screen
POST /v1/doc/classify
POST /v1/face/match
POST /v1/pan/extract
POST /v1/face/liveness
…passport/voter/dl (soon)
POST /v1/face/verify
POST /v1/face/enroll
POST /v1/face/search
Authenticate a request
curl {{apiBase}}/v1/aadhaar/mask \
  -H "X-API-Key: ez_••••••••" \
  -H "Content-Type: application/json" \
  -d '{"file_b64":"<base64 image/pdf>","return_b64":true}'

KYC calls use X-API-Key; platform calls use a Bearer JWT. All responses use the {ok, data} envelope.

{{toast}}