For the complete documentation index, see llms.txt. This page is also available as Markdown.

Export Sent Messages

How to Export Sent Messages

To export your sent message data send a request to the GET /sent-messages/export endpoint. In this request you specify your desired report parameters as query parameters. Depending on the size of the data set identified by your specified parameters, the report will either be generated synchronously or asynchronously.

Synchronous Exports

If an export is generated synchronously, the response to the request to generate the export will include a data object with a populated url field. This URL points to the hosted location of your export data via signed URL, which is valid for 24 hours.

Asynchronous Exports

If an export is generated asynchronously, the response to the request to generate the export will instead include a populated trackingReportId field and no url. This Tracking Report ID is an identifier you can use to call the GET /sent-messages/export/status/{trackingReportId} endpoint.

You can call this endpoint at any time after initiating the export request to determine the status of the exported data. While the report is still being generated, you will receive a status of pending (meaning the report request is waiting to be picked up by a processing job) or in_progress (meaning the report is actively being generated). When the report is ready, a request to this endpoint will return a success status and the fileUrl parameter will be populated. As with synchronous requests, this URL points to the generated report via a signed URL. The expiration date/time of this URL is specified in expirationDate, after which the export file will no longer be available via the same URL.

Export Sent Messages

get

Rate Limiting

This endpoint overrides the general rate limit with an account rate limit. Requests are limited by the authenticated account instead of the IP address. This endpoint is limited to 2 requests per minute

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
pagenumberOptional
pageSizenumberOptional
sortDirectionstring · enumOptionalPossible values:
querystringOptional
sortBystringOptional
typestringOptional
sentBystringOptional
hideAutomatedRepliesbooleanOptional
formatstring · enumRequiredPossible values:
reportTypestring · enumRequiredPossible values:
exportByEmailbooleanOptional
Responses
200

Success

application/json
get/sent-messages/export
GET /v3/sent-messages/export?format=csv&reportType=inbound HTTP/1.1
Host: api.mobile-text-alerts.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "success": true,
  "error": "text",
  "message": "text",
  "data": {
    "url": "text",
    "trackingReportId": 1
  }
}

Get Sent Messages Report Status

get

Rate Limiting

This endpoint overrides the general rate limit with an account rate limit. Requests are limited by the authenticated account instead of the IP address. This endpoint is limited to 15 requests every 15 seconds

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
trackingReportIdstringRequired
Responses
200

Success

application/json
get/sent-messages/export/status/{trackingReportId}
GET /v3/sent-messages/export/status/{trackingReportId} HTTP/1.1
Host: api.mobile-text-alerts.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "success": true,
  "error": "text",
  "message": "text",
  "data": {
    "id": 1,
    "name": "text",
    "status": "pending",
    "type": "smr",
    "fileUrl": "text",
    "lastDeliveryDate": "2026-01-01T00:00:00.000Z",
    "expirationDate": "2026-01-01T00:00:00.000Z",
    "createdAt": "2026-01-01T00:00:00.000Z"
  }
}

Last updated

Was this helpful?