Check OTP delivery status
check_otp_statusCheck whether a previously sent OTP is still active and (with DLR_ACCESS entitlement on Enterprise plan) get its delivery status. Returns is_active (bool) and expires_at (ISO timestamp) on every plan. On Enterprise plans, also returns DLR (one of 'delivered', 'sent', 'read', 'failed', 'pending'). Useful when an end user reports they didn't receive the code — you can confirm whether MyOTP delivered it before deciding to resend. Does NOT verify a code; use verify_otp for that.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| message_id | Yes | The UUID returned by `generate_otp` — this identifies which OTP you want a status report on. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| DLR | No | Delivery state: carrier status (ATES, DELIVRD, UNDELIV, EXPIRED, REJECTD) or sent/delivered/read/pending/failed.<reason>, a 'Pending: ...' hint, or a 'Not available ...' explanation. Absent when the message_id is unknown. | |
| DLR: | No | Deprecated alias of DLR. | |
| message | No | Present instead of DLR when the message_id is not found. | |
| Message: | No | Deprecated alias of message. | |
| is_active | No | Whether the OTP can still be verified (it has not expired). | |
| expires_at | No | ISO 8601 date-time the OTP expires. Absent when the message_id is unknown. |