Retrieve a verification
bearerAuthAuthorizationBearer <token>A secret API key from the dashboard: coss_live_… for production environments, coss_test_… for sandbox environments.
id*stringThe verification's id.
Coss-Version?"2026-10-10"The API version (a date) to use for this request. Defaults to your organization's version, pinned to the latest one when it first used the API and upgraded from the dashboard. The SDK always sends the version it was built for.
"2026-10-10"The verification.
application/json- response
- response
- …
object*"verification""verification"id*stringchannel*string"sms""email"to*stringcountry*|ISO 3166 country of a phone number.
status*stringpending until the right code is checked (approved) or it ends: expired, canceled, failed (too many wrong codes, or the code couldn't be sent) or blocked (the fraud guard stopped it before anything was sent).
"pending""approved""expired""canceled""failed""blocked"failure*|Why it failed.
reasons*array<>Why it was blocked (empty otherwise).
attempts*integerWrong codes checked so far.
max_attempts*integersends*array<>Each time the code was sent.
tags*array<>sandbox*booleanMade in a sandbox environment: simulated, and the code is always zeros.
expires_at*stringdate-timeapproved_at*|date-timecreated_at*stringdate-timeimport { Coss } from "coss";const coss = new Coss({ apiKey: process.env.COSS_API_KEY, baseUrl: "https://api.coss.com",});const { data, error } = await coss.verify.get("vrf_01k8e2m4q2f3e9v6t5r1n0p8yz");{ "object": "verification", "id": "vrf_01k8e2m4q2f3e9v6t5r1n0p8yz", "channel": "sms", "to": "+14155550199", "country": "US", "status": "pending", "failure": null, "reasons": [], "attempts": 0, "max_attempts": 5, "sends": [ { "channel": "sms", "route": "shared_number", "sms_id": "sms_01k8e2m4q2f3e9v6t5r1n0p8yz", "email_id": null, "created_at": "2026-11-10T12:00:00.000Z" } ], "tags": [], "sandbox": false, "expires_at": "2026-11-10T12:10:00.000Z", "approved_at": null, "created_at": "2026-11-10T12:00:00.000Z"}