Request
curl -X POST https://api.beaconbox.eu/api/v1/messages/v55favd767qu/sms \
-H "Authorization: Bearer $BEACONBOX_API_KEY"
-H "Idempotency-Key: 8f2b1c04-3d6a-4e55-9a12-77c0b4e9d100"client.messages.resend_sms(message_id)$client->messages->resendSms($messageId)Path parameters
| Name | Type | Description |
|---|---|---|
public_id | string |
Response
Returns 200.
| Field | Type | Description |
|---|---|---|
queued | boolean | |
credits | integer | Credits this SMS will cost when a carrier accepts it. One per message: the nudge is a fixed single carrier segment, adjusted for the destination country. |
skipped_reason | string | null | Why no SMS was queued. One of: sending_paused, unsubscribed, disabled_by_request, sms_not_enabled, sms_disabled, country_not_allowed, no_phone, phone_conflict, stopped, insufficient_credit, rate_limited, sms_warmup_cap_reached. sms_not_enabled means SMS has not been switched on for your business yet; ask for it from the dashboard. sms_disabled means your SMS mode is off; a push that does not mention SMS on an account that has it off, or sends it only on request, gets no sms block at all. sms_warmup_cap_reached is decided when the send runs, so it reaches you on the message rather than in this response. Treat an unrecognised value as 'not queued' rather than as an error; the list grows. |
escalates_at | date-time | null | Set when escalate_if_unread_after_minutes armed this channel instead of sending it. queued is false and there is no skipped_reason: nothing was refused, and nothing has been charged. At this moment we check whether the recipient has opened the message, and send only if they have not. |
Errors
Failures are { "error_code": "..." } with a stable dotted code. See Errors for the codes worth branching on and the three outcomes that look like failures and are not.
This is a write, so it requires an Idempotency-Key header. A request without one is refused with 422. See Idempotency.
