Skip to content

Look up email and SMS delivery status for up to 25 tracking IDs. Each entry is the tracking id, channel (EMAIL or SMS), status, and the time that status was recorded. The result does not include recipients, phone numbers, user ids, request bodies, IP addresses, account ids, or user-agent data. Unknown tracking ids are omitted. Other channels are not included.

GET
/logs/status/{trackingIds}
curl --request GET \
--url https://api.pingram.io/logs/status/example \
--header 'Authorization: Bearer <token>'

Authorizations

Parameters

Path Parameters

trackingIds
required
string

Comma-separated tracking IDs (URL encoded, max 25)

Responses

200

Successful response

Media typeapplication/json

Response type for GET /logs/status/{trackingIds}. Unknown tracking ids are omitted. A log that is still ingesting is omitted until it can be read.

object
statuses
required

Delivery outcomes for the requested tracking ids.

Array<object>

One delivery outcome. Fields are limited to the tracking id, channel, status, and the time that status was recorded. channel is omitted when the outcome is for the whole request, before a channel was chosen.

object
trackingId
required

Opaque id returned when the notification was accepted.

string
channel

Channel named on a delivery-status row. Email and SMS only. Coarse labels: no address or provider id.

string
Allowed values: EMAIL SMS
status
required

Delivery outcome for one request or one channel. These are the same states shown in the dashboard status column.

string
Allowed values: PROCESSING FAILED IGNORED SCHEDULED UNSCHEDULED BATCHED SENT DELIVERED BOUNCED COMPLAINT THROTTLED DEDUPLICATED OPENED CLICKED INBOUND AUTO_REPLY
updatedAt
required

ISO 8601 time this outcome was recorded.

string
Example
{
"statuses": [
{
"channel": "EMAIL",
"status": "PROCESSING"
}
]
}

400

Bad Request - validation errors, invalid input

Media typeapplication/json

Standard error response for API errors.

object
trackingId
required

Unique tracking ID for the request.

string
error
required

Structured error details for API error responses.

object
code
required

Machine-readable error code.

string
message
required

Human-readable error message.

string
fix

Actionable hint for fixing the error.

string
Examplegenerated
{
"trackingId": "example",
"error": {
"code": "example",
"message": "example",
"fix": "example"
}
}

401

Unauthorized

402

Payment Required - usage limits exceeded

Media typeapplication/json

Standard error response for API errors.

object
trackingId
required

Unique tracking ID for the request.

string
error
required

Structured error details for API error responses.

object
code
required

Machine-readable error code.

string
message
required

Human-readable error message.

string
fix

Actionable hint for fixing the error.

string
Examplegenerated
{
"trackingId": "example",
"error": {
"code": "example",
"message": "example",
"fix": "example"
}
}

500

Internal Server Error

502

Bad Gateway - provider error

Media typeapplication/json

Standard error response for API errors.

object
trackingId
required

Unique tracking ID for the request.

string
error
required

Structured error details for API error responses.

object
code
required

Machine-readable error code.

string
message
required

Human-readable error message.

string
fix

Actionable hint for fixing the error.

string
Examplegenerated
{
"trackingId": "example",
"error": {
"code": "example",
"message": "example",
"fix": "example"
}
}