Skip to main content

SMS Status

Track the delivery status of your transactional SMS messages. List all sent messages with aggregate status counts, or get per-recipient delivery details for a specific message.

List SMS Messages

Retrieve a paginated list of transactional SMS messages sent by your organization.

Endpoint

GET /sms

Query Parameters

ParameterTypeDefaultDescription
pagenumber1Page number
limitnumber20Results per page

Response

{
"data": [
{
"id": "01957e3a-4b5c-7d8e-9f0a-1b2c3d4e5f6a",
"from": "Arsel",
"content": "Your verification code is 483920.",
"country": "KSA",
"message_parts": 1,
"category": "verification",
"status": {
"sent": 1,
"delivered": 1,
"undelivered": 0,
"blocked": 0,
"rejected": 0
},
"created_at": "2026-03-08T12:00:00.000Z"
}
],
"meta": {
"total": 15,
"page": 1,
"limit": 20,
"totalPages": 1,
"hasNextPage": false,
"hasPrevPage": false
}
}

Response Fields

FieldDescription
fromSender name
contentMessage body. Returns null if content has been purged.
countryRecipient country: KSA or Egypt
message_partsNumber of SMS parts the message was split into
categoryAnalytics category label, if provided

Status Fields

FieldDescription
sentMessages submitted to the carrier
deliveredMessages confirmed delivered to the handset
undeliveredDelivery failed (phone off, invalid number)
blockedBlocked by the carrier or regulatory filter
rejectedRejected before delivery attempt

Examples

curl "https://api.arsel.sa/api/v1/sms?page=1&limit=10" \
-H "Authorization: Bearer be_your_api_key"

Get SMS Details

Retrieve detailed delivery status for a specific SMS, including per-recipient tracking.

Endpoint

GET /sms/:id

Path Parameters

ParameterTypeDescription
idstringThe SMS ID returned from POST /sms/send

Response

{
"id": "01957e3a-4b5c-7d8e-9f0a-1b2c3d4e5f6a",
"from": "Arsel",
"to": [
{
"phone": "+966512345678",
"status": "delivered",
"timestamp": "2026-03-08T12:00:03.000Z"
},
{
"phone": "+966598765432",
"status": "sent",
"timestamp": null
}
],
"content": "Your verification code is 483920.",
"country": "KSA",
"message_parts": 1,
"category": "verification",
"created_at": "2026-03-08T12:00:00.000Z"
}

Recipient Status Values

StatusDescription
in_progressMessage is being processed
sentSubmitted to the carrier, awaiting delivery confirmation
deliveredConfirmed delivered to the recipient's handset
undeliveredDelivery failed (phone powered off, invalid number, etc.)
bufferedQueued by the carrier for later delivery
blockedBlocked by the carrier or a regulatory filter
rejectedRejected before delivery attempt
expiredDelivery window expired before the message could be delivered
clickedRecipient clicked a tracked link in the message
unknownDelivery status could not be determined

Examples

curl "https://api.arsel.sa/api/v1/sms/01957e3a-4b5c-7d8e-9f0a-1b2c3d4e5f6a" \
-H "Authorization: Bearer be_your_api_key"