Skip to main content
GET
/
sms
/
track
/
{smsId}
Track SMS
curl --request GET \
  --url https://api.otpiq.com/api/sms/track/{smsId} \
  --header 'Authorization: Bearer <token>'
{
  "smsId": "sms-1234567890abcdef123456",
  "phoneNumber": "964750123456",
  "status": "sent",
  "cost": 200,
  "isFinalStatus": false,
  "lastChannel": "whatsapp",
  "channelFlow": [
    {
      "channel": "whatsapp",
      "tried": true,
      "success": true
    },
    {
      "channel": "sms",
      "tried": false
    }
  ]
}

Authorizations

Authorization
string
header
required

API key authentication. Format: Bearer sk_live_your_api_key_here

Path Parameters

smsId
string
required

The SMS ID to track

Examples:

"sms-1234567890abcdef123456"

Response

SMS status retrieved successfully. Response body includes SMSTrackingResponse with fields: smsId, phoneNumber, status, cost, isFinalStatus, lastChannel, channelFlow[].

smsId
string
required

Unique identifier for the SMS message

Examples:

"sms-1234567890abcdef123456"

phoneNumber
string
required

Phone number the SMS was sent to

Examples:

"964750123456"

status
enum<string>
required

Current status of the SMS message

Available options:
pending,
sent,
delivered,
read,
failed
Examples:

"sent"

cost
number
required

Cost of the SMS in IQD

Required range: x >= 0
Examples:

200

isFinalStatus
boolean
required

Whether the SMS has reached a final state (no further attempts will be made)

Examples:

false

lastChannel
string
required

The last channel attempted or used for sending. One of 'sms', 'whatsapp', 'telegram'.

channelFlow
object[]
required

Sequence of channels and their attempt statuses

I