---
title: "Get authentication status"
method: GET
path: "/authentication/{auth_uuid}"
tags: ["OTP"]
deprecated: true
---

# Get authentication status

`GET /authentication/{auth_uuid}`

> **Deprecated.**

Get the status of an authentication.

## Path parameters

- `auth_uuid` string, uuid, required — The UUID of the authentication.

## Response `200`

OK

- AuthenticationStatusResponse
  - `uuid` string, uuid — The UUID of the corresponding authentication.
  - `phone_number` string, phone_number — An E.164 formatted phone number.
  - `template_id` string — The template id associated with the message content variant to be sent.
  - `correlation_id` string — A unique, user-defined identifier that will be included in webhook events.
  - `created_at` string, date-time
  - `signals` object — Signals are data points used to distinguish between fraudulent and legitimate users.
    - `ip` string, ipv4 — The IP address of the user's device.
    - `device_id` string — Unique identifier for the user's device. For Android, this corresponds to the `ANDROID_ID` and for iOS, this corresponds to the `identifierForVendor`.
    - `device_type` 'ANDROID' | 'IOS' | 'IPADOS' | 'TVOS' | 'WEB' — The type of device the user is using.
    - `app_version` string — The version of your application.
    - `app_realm` string — The Android SMS Retriever API hash code that identifies your app. This allows you to automatically retrieve and fill the OTP code on Android devices.
    - `os_version` string — The version of the user's device operating system.
    - `device_model` string — The model of the user's device.
    - `is_returning_user` boolean — This signal should do more than just confirm if a user is returning to your app; it should provide a higher level of trust, indicating that the user is genuine. For more details, refer to [Signals](/verify/v2/documentation/prevent-fraud#signals).
  - `events` union[] — Represents a collection of events that occur during the authentication process. Each event captures specific actions and outcomes related to the authentication attempts, checks, delivery statuses, and balance updates. The array can contain different types of events, each with its own structure and properties.
    - union
      - object
        - `id` string — The ID of the attempt.
        - `content` string — The content of the attempt.
        - `sender_id` string — The sender ID of the attempt.
        - `capability` 'rcs' | 'text' | 'whatsapp' | 'viber' | 'zalo' | 'telegram' — The capability of the attempt.
        - `attempt_number` integer — The attempt number.
        - `status` 'pending' | 'delivered' | 'failed' | 'rate_limited' | 'expired' — The status of the attempt. Possible values are: * `pending` - The attempt is pending. * `delivered` - The attempt was delivered. * `failed` - The attempt failed. * `rate_limited` - The authentication was rate limited and cannot be retried. * `expired` - The authentication has expired and cannot be retried.
        - `type` 'attempt' | 'check' | 'delivery_status' | 'balance_update' — The type of the event.
        - `created_at` string, date-time
      - object
        - `id` string — The ID of the check.
        - `code` string — The code that was checked.
        - `status` 'unknown' | 'valid' | 'invalid' | 'without_attempt' | 'rate_limited' | 'already_validated' | 'expired_auth' — The status of the check. Possible values are: * `unknown` - The status is unknown. * `valid` - The code is valid. * `invalid` - The code is invalid. * `without_attempt` - No attempt was sent yet, so a check cannot be completed. * `rate_limited` - The authentication was rate limited and cannot be checked. * `already_validated` - The authentication has already been validated. * `expired_auth` - The authentication has expired and cannot be checked.
        - `type` 'attempt' | 'check' | 'delivery_status' | 'balance_update' — The type of the event.
        - `created_at` string, date-time
      - object
        - `status` 'unknown' | 'submitted' | 'in_transit' | 'delivered' | 'undeliverable' — The status of the delivery. Possible values are: * `unknown` - The status of the delivery is unknown. * `submitted` - The message has been submitted to the carrier. * `in_transit` - The message is in transit to the recipient. * `delivered` - The message has been delivered to the recipient. * `undeliverable` - The message could not be delivered to the recipient.
        - `attempt_id` string — The ID of the attempt.
        - `attempt_number` integer — The attempt number.
        - `originated_at` string, date-time — The date and time from the provider.
        - `type` 'attempt' | 'check' | 'delivery_status' | 'balance_update' — The type of the event.
        - `created_at` string, date-time
      - object
        - `balance_update_type` 'unknown' | 'authentication' | 'attempt' | 'attempt_pending' | 'attempt_success' | 'authentication_pending' | 'authentication_success'
        - `amount` number, double — The amount of the balance update.
        - `type` 'attempt' | 'check' | 'delivery_status' | 'balance_update' — The type of the event.
        - `created_at` string, date-time

## Other responses

- `400` — Bad Request

## Changes

- **2025-05-19** `060cbae07b8f` — 2 warning
  - added the new `telegram` enum value to the `events/items/anyOf[subschema #1: Attempt]/allOf[subschema #1]/capability` response property for the response status `200`
  - added the new `zalo` enum value to the `events/items/anyOf[subschema #1: Attempt]/allOf[subschema #1]/capability` response property for the response status `200`
- **2025-04-28** `187cbbb71a45` — 1 info
  - endpoint deprecated
- **2024-11-15** `89c963a887fd` — 2 warning
  - added the new `IPADOS` enum value to the `signals/device_type` response property for the response status `200`
  - added the new `TVOS` enum value to the `signals/device_type` response property for the response status `200`
- **2024-10-30** `1ec3fb120b7d` — 1 info
  - added the non-success response with the status `400`
- **2024-10-30** `9fe0f2bcb176` — 1 info
  - added the optional property `events/items/anyOf[subschema #3: Delivery Status]/allOf[subschema #1]/originated_at` to the response with the `200` status

[Full history](https://skmtc.dev/ding-live/apis/ding/changes/authentication/:auth_uuid/get.md)

---

[API](https://skmtc.dev/ding-live/apis/ding.md) · [All operations](https://skmtc.dev/ding-live/apis/ding/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/ding-live/ding/revisions/060cbae07b8f/schema)
