Skip to main content
Reading one verification answers a question about one subject. These endpoints answer questions about your account: which journeys you can run, how the runs on them stand, how many of them your own checks stopped, and which records make up a number. All of them answer for your key’s environment alone. A uat key counts and lists the runs on your uat workflows and a production key those on your production ones, so a total you read is a total within one environment. See Environments.

Your workflows

GET /workflows lists every workflow in your key’s environment: the key you name when creating a verification, its name, its mode, how long a verification created on it now holds a user’s data, how many steps it declares, and where it stands on both of the limits its verifications are held to.
credits is what the workflow was sold and what its runs have used, and runs is how many verifications it has going against how many it may. This is the endpoint to watch to see a workflow running low: reading it uses no credit, and vendor-verification above is out and will refuse a create with 402. Every workflow reports runs, an instant one included: its verifications are open for as long as their checks run. See Credits and limits. For the steps themselves, read one workflow with GET /workflows/{workflow_key}. That view is reference material rather than a stable contract, and Verification lifecycle says why. A workflow taken out of use is not listed, because you can no longer create a verification on it. The verifications that ran it stay readable and go on naming it as their workflow_key, so a key you read on a record may not appear here. Every key you can read is still one you can count and filter on.

Counting them

GET /verifications/summary counts every verification in your key’s environment by status, in total and split by the workflow it runs:
total is the sum of the six statuses, in the whole and in each workflow, so nothing is counted twice and nothing is left out. Statuses says what each one means. A workflow appears once it has a verification in what was counted, so one nobody has been sent through is absent from workflows while still being listed by GET /workflows.
These are counts of statuses, not of outcomes. A verification counted as completed is one that finished, not one that passed: a user can complete a journey with a step that failed. And because expiry supersedes every ending, a completed run stops being counted as completed once it expires. Read a verification, or list them, to see what a count is made of.

Counting a period

from and to narrow both the summary and the list to verifications created in that period. Days are IST and both ends are inclusive, so from=2026-08-01&to=2026-08-31 counts the runs that began in August and reports where each of them stands now. Leave either out to leave that end open; leave both out and every verification you have ever created is counted.

Counting gated runs

GET /verifications/gated-runs counts the runs a gate check of yours stopped, in total, per workflow and per gate that stopped them:
Every run a gate stopped is counted once, however the verification has moved on since. Resetting a gated verification does not take its run out of the count, and if the gate stops the run the reset began, that is counted again. A gated verification that has since expired or been purged is still counted. A workflow whose gates have stopped nothing, and a gate that has stopped nothing, are absent. from and to narrow the count to runs stopped in that period, read against the day the gate stopped each one rather than the day its verification was created. Days are IST and both ends are inclusive.
This is not the gated figure in the summary. The summary counts the verifications standing in gated now, by the day each was created, so a gated verification you reset or that expired is no longer counted there. Count gated runs here.

Listing them

GET /verifications returns a page of records without their steps: what each one is, who completes it, where it stands, when it got there, and how its callback ended.
An entry carries no steps, no progress, no context, and no mobile number. Read the verification by id for those; Reading the result covers the whole record. version is the version of the workflow the verification runs. Listing a workflow’s open verifications therefore shows which of them are still walking an earlier version than the latest, which are the ones to decide about when a workflow changes. See Versions.

Narrowing the list

A reference is unique to a live verification within one workflow, so reference_user_id on its own gathers that subject’s run of each of your workflows, along with any expired record still holding the reference. Name workflow_key as well for one particular run.

Paging

Read next_cursor from a page and pass it back as cursor to get the page after it. The page that carries null is the last one:
Keep the other parameters the same across a walk; a cursor marks a position in the list you were reading, not a filter of its own. Paging is keyed on the record’s position rather than on an offset, so a verification you create while partway through a walk never shifts a later page. Cursors are opaque: pass one back as you received it and do not build anything out of its contents.

Finding a record from your own reference

reference_user_id is your identifier, and it is the handle that survives a record expiring. Filtering the list on it finds the verification without your having stored our id:

Catching up on callbacks you missed

Privue posts one callback per submission and one per run a gate check stopped, and the verification completes, or stays gated, whether or not it was delivered, so an endpoint that was down loses those notifications. The list is how you find them again: read the period your endpoint was down, and callback on each entry says which records you were told about.
An entry whose callback.status reads failed is a finished verification you were never told about, and reason says what our attempts ran into. Read status=gated over the same period for the gated runs you missed. See Callbacks.