---
title: "Status and delivery of a verification"
method: GET
path: "/v1/verifications/{verificationId}"
tags: ["Public API"]
---

# Status and delivery of a verification

`GET /v1/verifications/{verificationId}`

## Request

- Base URL: `https://otprun.com`
- URL: `https://otprun.com/v1/verifications/{verificationId}`
- Auth: HTTP bearer

## Path parameters

- `verificationId` string, uuid, required

## Response `200`

OK

- VerificationBody
  - `attempts` integer, required
  - `channel_used` 'whatsapp_gateway' | 'telegram' | 'telegram_gateway' | 'whatsapp_official', nullable, required: Channel that carries the code, null until chosen
  - `code_length` integer, required
  - `created_at` string, date-time, required
  - `delivered_at` string, date-time, nullable, required
  - `error_code` string, required
  - `expires_at` string, date-time, required
  - `failed_at` string, date-time, nullable, required
  - `id` string, uuid, required
  - `inbound` VerificationInboundBody, required
    - `tg_link` string, required: t.me deep link that confirms the user in the Telegram bot, empty when no bot is available
    - `wa_link` string, required: wa.me link the user taps to send the code, empty when no WhatsApp slot is connected
  - `inbound_link` string, required: wa.me link for inbound verifications, empty otherwise
  - `locale` string, required
  - `max_attempts` integer, required
  - `mode` 'outbound' | 'inbound' | 'relay' | 'login', required: relay: the code came from an auth provider such as Supabase, which also checks it; login: an OTP Run sign-in code
  - `project_id` integer, required
  - `sent_at` string, date-time, nullable, required
  - `slot_id` string, nullable, required
  - `status` 'pending' | 'sent' | 'delivered' | 'verified' | 'failed' | 'expired' | 'canceled' | 'locked', required
  - `to_phone` string, required: E.164 recipient, empty for inbound verifications without an expected phone
  - `verified_at` string, date-time, nullable, required

## Other responses

- `404`: Not Found
- `422`: Unprocessable Entity
- `500`: Internal Server Error

---

[API](https://skmtc.dev/otprun/apis/otp-run-api.md) · [All operations](https://skmtc.dev/otprun/apis/otp-run-api/llms.txt) · [OpenAPI document](https://skmtc.dev/otprun/apis/otp-run-api/revisions/43d40d5f4050?raw)
