Outbound SMS
Use the SMS API to programmatically initiate text conversations using Revmo's agent system. Each SMS thread can either be managed by an AI agent or sent as a standalone message.
Below, learn the basic methods of managing SMS messages through the API. To view all available endpoints and their requirements, check out the API reference documentation.
Outbound SMS functionality is available on a per-account basis. If you need access to SMS capabilities, please contact support@revmo.ai.
Create an Outbound SMS Thread
To create an outbound SMS thread, make a POST request to /v1/startsms/.
In the request body, add message details and any required metadata. You'll need to authenticate your request using your API key, which you can find in your account settings.
Properties
In the request body, you can include the following fields:
| Field | Type | Required | Description |
|---|---|---|---|
| agentId | base64 | Yes | Your Agent ID from the Revmo platform. Located on your account page. |
| to | phone | Yes | The destination phone number to receive the SMS. |
| trigger | string | No | The trigger phrase that launches the appropriate task for your agent. |
| metadata | object | No | Additional key-value pairs of information for the Agent to use during the conversation. |
| override | string | No | Override the default SMS message to be sent. |
| no_agent | string | No | Disable the Agent for this SMS conversation. Use this when you only want to send a single message. |
Example Request
import requests
HEADERS = {
"Authorization": "Bearer YOUR_API_KEY"
}
DATA = {
"agentId": "YOUR_AGENT_ID",
"to": "+1234567890",
"trigger": "appointment_reminder",
"metadata": {
"customer_name": "John Doe",
"appointment_time": "2025-02-22T15:00:00Z"
},
"override": "Hi John, just confirming your appointment tomorrow at 3 PM.",
"no_agent": "true" # Only if you want to send a single message without agent interaction
}
response = requests.post(
"https://api.revmo.ai/v1/startsms/",
json=DATA,
headers=HEADERS
)
Managing SMS Conversations
When you initiate an SMS thread with agent enabled (default behavior), the Revmo agent will handle the conversation based on the specified trigger and metadata. You can manage all ongoing conversations through the Conversations page on our web interface, where you can:
- Monitor conversation history in real-time
- Take over conversations manually when needed
- Enable or disable the AI agent for specific threads
- Send direct responses to customer messages
- View conversation metadata and context
The agent can:
- Respond to customer inquiries
- Send appointment reminders
- Provide status updates
- Transfer to human agents when necessary
For single message sending without agent interaction, use the no_agent parameter and optionally specify a custom message with override. You can also enable or disable the agent for any conversation at any time through the web interface.
Best Practices
-
Phone Number Formatting
- Always use E.164 format for phone numbers (+1XXXXXXXXXX)
- Validate numbers before sending
- Handle international number formats appropriately
-
Content Guidelines
- Keep messages concise and clear
- Include opt-out instructions when required
- Follow local regulations and compliance requirements
-
Technical Implementation
- Implement retry logic for failed messages
- Monitor delivery rates and engagement
- Store ThreadIds for future reference
- Handle webhook notifications reliably
-
Testing
- Use test phone numbers before production deployment
- Verify webhook functionality
- Test different trigger scenarios
- Validate metadata handling
Rate Limits
Default rate limits apply to protect the system from abuse. Contact support for specific limits for your account type.