Documentation
SMS API Messages

Batches

List, read and cancel SMS batches, and interpret batch summaries and status.

A batch is the container for one or more messages created in the same request. Messages cannot exist without a parent batch.

Endpoints

Method Path Description
GET /v2/batches List batches. The result is paginated.
GET /v2/batches/{batchId} Read a single batch.
DELETE /v2/batches/{batchId} Delete a batch or cancel a future batch.

List batches

curl "https://api.ip1sms.com/v2/batches?start=0&limit=50&order=DESC" \
  -H "Authorization: Bearer $IP1_TOKEN" \
  -H "Accept: application/json"

Use start, limit and order, as well as the links in the response’s Link header. You can also filter batches by the tags assigned when they were created.

Read a batch

curl "https://api.ip1sms.com/v2/batches/{batchId}" \
  -H "Authorization: Bearer $IP1_TOKEN" \
  -H "Accept: application/json"

batchId is the ID returned when the batch was created.

Delete or cancel

curl -X DELETE "https://api.ip1sms.com/v2/batches/{batchId}" \
  -H "Authorization: Bearer $IP1_TOKEN"

Treat this as a destructive operation. For a scheduled batch, it cancels future delivery. Check the response before marking the local record as canceled.

Batch document

{
  "id": "batch_abc123",
  "sender": "YourCompany",
  "body": "Your booking is confirmed.",
  "owner": "ip1-XXXXX",
  "direction": "MT",
  "type": "sms",
  "datacoding": "GSM",
  "priority": 1,
  "templated": false,
  "priceSummary": {
    "total": 0.125,
    "currency": "SEK",
    "average": 0.0416
  },
  "messageSummary": {
    "201": { "messages": 3, "sms": 3 }
  },
  "deliveryWindows": [
    {
      "opens": "2026-10-05T08:00:00Z",
      "closes": "2026-10-05T10:00:00Z"
    }
  ],
  "status": 112,
  "deliveryReportUrl": "https://example.com/webhooks/ip1/delivery",
  "reference": "order-123",
  "tags": ["transactional"]
}

Fields

Field Type Description
id string Batch ID.
sender string Sender used for the messages.
body string Original message text before templating.
owner string Owning SMS account.
direction string MT for outbound or MO for inbound.
type string sms or flash.
datacoding string gsm or ucs.
priority integer 1 or 2.
templated boolean Whether the text contains recipient-specific templating.
priceSummary object total, currency and average.
messageSummary object Message and SMS segment counts grouped by status code.
deliveryWindows object[] Time windows with opens and closes.
status integer Aggregate batch status.
deliveryReportUrl string | null URL for status callbacks.
reference string | null Your own reference.
tags string[] Your own categories.

Batch status

Name Code Meaning
Planned 101 The batch is scheduled for the future.
Ongoing 111 The batch is being processed and sent.
Sent 112 The batch has been sent.
Incoming 201 The batch contains inbound messages.
Canceled 203 The batch has been canceled.

Batch status is not a substitute for an individual message’s status. Read Messages or use Delivery reports when you need to handle each recipient’s outcome.

Choose the purposes you consent to. Necessary storage is used only to remember your choice.