Send Text Message
Send SMS messages via the Textbelt API on Orthogonal.
Workflow
Step 1: Gather Info
Ask the user for:
- •Phone number (required) - US/Canada: 10-digit with area code. International: E.164 format (e.g., +44...)
- •Message (required) - Max 800 characters. No URLs allowed.
Step 2: Send the Message
bash
orth run textbelt /text --body '{
"phone": "<phone_number>",
"message": "<message_text>"
}'
Step 3: Confirm Delivery
The response includes a textId. Use it to check delivery status:
bash
orth run textbelt /status/{textId}
This endpoint is free.
Response
Send Response (/text)
- •success (boolean) -
trueif message was queued - •textId (string) - Message ID for delivery tracking (only on success)
- •quotaRemaining (integer) - Remaining SMS credits
- •error (string) - Error message (only on failure)
Status Response (/status/{textId})
- •status (string) -
DELIVERED,SENDING,FAILED, orUNKNOWN
Constraints
- •Max 800 characters per message
- •No URLs in message text
- •Sender name is optional and not visible to the recipient in most countries
Optional Parameters
When sending, you can also include:
- •
sender(string) - Business/org name for regulatory purposes - •
replyWebhookUrl(string) - US only: URL to receive reply webhooks - •
webhookData(string) - Extra data passed to webhook (max 100 chars)
Error Handling
- •success: false with
errorfield describes the issue (e.g., invalid phone number, insufficient credits) - •US/Canada numbers only work from US/Canada IP region
- •International numbers require E.164 format (e.g.,
+44...) - •Messages containing URLs are rejected — use descriptions instead
- •Max 800 characters — longer messages are rejected, not truncated