curl https://api.getversive.com/api/v1/studies/9b2f7c1e-4a4b-4f6e-9a1d-1c2d3e4f5a6b/metrics \
-H "Authorization: Bearer $VERSIVE_API_KEY"
{
"complete": 42,
"in_progress": 3,
"screened_out": 11,
"quota": null,
"status": "published",
"quotas": {
"mode": "url_param",
"fixed": null,
"param_name": "group",
"buckets": [
{ "value": "1", "limit": 50, "complete": 30 },
{ "value": "2", "limit": 50, "complete": 12 }
],
"unmatched_param_policy": "allow",
"question_buckets": [
{
"question_id": "3f1c2a9e-8d4b-4c7a-9e21-5b6d7c8e9f01",
"kind": "choice",
"match": "equals",
"value": "iPhone",
"limit": 25,
"complete": 19
}
]
}
}
Studies
Get study metrics
Response counts and quota progress for a study
GET
/
studies
/
{id}
/
metrics
curl https://api.getversive.com/api/v1/studies/9b2f7c1e-4a4b-4f6e-9a1d-1c2d3e4f5a6b/metrics \
-H "Authorization: Bearer $VERSIVE_API_KEY"
{
"complete": 42,
"in_progress": 3,
"screened_out": 11,
"quota": null,
"status": "published",
"quotas": {
"mode": "url_param",
"fixed": null,
"param_name": "group",
"buckets": [
{ "value": "1", "limit": 50, "complete": 30 },
{ "value": "2", "limit": 50, "complete": 12 }
],
"unmatched_param_policy": "allow",
"question_buckets": [
{
"question_id": "3f1c2a9e-8d4b-4c7a-9e21-5b6d7c8e9f01",
"kind": "choice",
"match": "equals",
"value": "iPhone",
"limit": 25,
"complete": 19
}
]
}
}
Returns response counts and quota progress for a study. Counts exclude archived, mock, and AI-simulated interviews.
Derive “quota met” or “spots remaining” from
string
required
The study ID.
Response
integer
Completed interviews.
integer
Interviews a participant has started but not finished.
integer
Participants screened out by logic rules or question quotas.
integer | null
The total-completes cap when the study uses one, otherwise
null. Kept for compatibility; use quotas for the full picture.object
Quota configuration and progress, same shape as Get quota progress.
Show properties
Show properties
string
off, fixed (total completes), or url_param (per link parameter).object | null
{ limit, complete } in fixed mode.string | null
The URL parameter in
url_param mode.array
One
{ value, limit, complete } per link value in url_param mode.string
allow or reject: what happens to participants whose link has no matching value.array
One
{ question_id, kind, match, value, limit, complete } per question quota, regardless of mode.string
The study status (e.g.
published, paused).limit and complete yourself. A limit of 0 means the bucket is closed.
curl https://api.getversive.com/api/v1/studies/9b2f7c1e-4a4b-4f6e-9a1d-1c2d3e4f5a6b/metrics \
-H "Authorization: Bearer $VERSIVE_API_KEY"
{
"complete": 42,
"in_progress": 3,
"screened_out": 11,
"quota": null,
"status": "published",
"quotas": {
"mode": "url_param",
"fixed": null,
"param_name": "group",
"buckets": [
{ "value": "1", "limit": 50, "complete": 30 },
{ "value": "2", "limit": 50, "complete": 12 }
],
"unmatched_param_policy": "allow",
"question_buckets": [
{
"question_id": "3f1c2a9e-8d4b-4c7a-9e21-5b6d7c8e9f01",
"kind": "choice",
"match": "equals",
"value": "iPhone",
"limit": 25,
"complete": 19
}
]
}
}