Send up to 500 messages in one request
/api/v1/messages/batchEach message is accepted or rejected on its own. A retry with the same Idempotency-Key returns the same result for every message.
Parameters
Idempotency-KeystringheaderrequiredRequest body
Shared fields apply to every message unless the message sets its own value.
fromstringAn approved number in E.164 format, or an approved sender name such as ACMEDENTAL. A sender name is one-way and sends only to UK and Irish numbers.
bodystringThe text. Send either body or template_id.
template_idstring · uuidAn active template. Line renders it with variables before it counts segments.
variablesobjectA value for every {{variable}} in the template.
send_atstring · date-timeSchedule the send, up to 35 days ahead. Include an offset, such as Z or +01:00. Credits are reserved at acceptance and released if the send is canceled.
expires_atstring · date-timeDo not send after this time. A message still waiting then ends as expired and its credits are released.
max_segmentsintegerReject the send when the encoded body exceeds this limit. The service maximum is 10.
max_creditsnumberReject the send when the estimate exceeds this decimal credit ceiling.
messagesarray of objectrequired1 to 500 messages. Each needs to, and inherits any shared field it does not set.
fromstringrequiredAn approved number in E.164 format, or an approved sender name such as ACMEDENTAL. A sender name is one-way and sends only to UK and Irish numbers.
tostringrequiredOne recipient in E.164 format.
bodystringThe text. Send either body or template_id.
template_idstring · uuidAn active template. Line renders it with variables before it counts segments.
variablesobjectA value for every {{variable}} in the template.
send_atstring · date-timeSchedule the send, up to 35 days ahead. Include an offset, such as Z or +01:00. Credits are reserved at acceptance and released if the send is canceled.
expires_atstring · date-timeDo not send after this time. A message still waiting then ends as expired and its credits are released.
client_referencestringmetadataobjectmax_segmentsintegerReject the send when the encoded body exceeds this limit. The service maximum is 10.
max_creditsnumberReject the send when the estimate exceeds this decimal credit ceiling.
Responses
200accepted and rejected counts, and one result per message in data, by index.402The live wallet cannot cover the batch.curl -X POST 'https://staging.useline.io/api/v1/messages/batch' \
-H "Authorization: Bearer $LINE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H 'Content-Type: application/json' \
-d '{
"from": "+447700900123",
"body": "Your appointment is tomorrow at 9am.",
"messages": [
{
"to": "+447700900456"
},
{
"to": "+447700900789"
}
]
}'