REST API documentation
SMS & MMS REST APIs
Send approved application messages and handle acceptance, delivery events, segmentation and charges.

Choose the API and credential together
Approved Developer & Automation, Business and Communications Provider accounts can integrate enabled services. An individual developer does not need to pretend to be a company. Application SMS/MMS requires the applicable sending approval and registration. Personal & Family service has no customer-accessible messaging-origination API.
| API family | Base URL | Authentication and result |
|---|---|---|
| Communications v3 | https://api.multitel.net/v3 | Approved Basic credentials; eligible provisioned tokens only for operations that support them. JSON status and response. |
| Emergency registration | https://api.multi.tel/emergency | Approved Basic credentials or specifically provisioned bearer access. JSON code, message and data. |
| Portal REST integrations | Host and operation shown in your account’s developer reference | Use that operation’s documented credential, scopes and schema. Browser session requests are a separate surface. |
Set MULTITEL_API_USERNAME and MULTITEL_API_PASSWORD through your server’s secret configuration before using the examples. Never embed them in public browser JavaScript, URLs or source control. Dedicated credentials are managed in API Integration settings.
Prepare an SMS request
Use an approved, SMS-enabled sending number owned by the account, a recipient who has agreed to the message, and the required Brand/Campaign or toll-free verification. The example below submits a real message when populated with working credentials and numbers; it is not a sandbox.
curl --fail-with-body \
--user "$MULTITEL_API_USERNAME:$MULTITEL_API_PASSWORD" \
--header "Accept: application/json" \
--request POST \
--header "Content-Type: application/json" \
--data '{"from":"YOUR_APPROVED_NUMBER","to":"YOUR_CONSENTED_RECIPIENT","text":"Your requested update is ready."}' \
"https://api.multitel.net/v3/sendsms"Replace the sender and recipient placeholders with international digits including the country code. For an MMS, supply the supported publicly retrievable media URL in media and verify MMS eligibility and pricing first.
Acceptance is not delivery
Inspect both the outer application status and the returned messaging result. Record the message identifier supplied by the service, and follow delivery status and webhook events. A successful submission cannot prove the recipient handset received the message.
SMS billing is per segment. Encoding and message length can produce several segments; media and carrier-related charges may differ from SMS. Read the account’s current sell price before sending. Never blindly retry a timed-out send: inspect its recorded outcome first.
Handle errors and retries
- Authentication or permission failure
- Check the API credential’s enabled state, permitted service and source-IP restriction. A portal session cookie is not an integration credential.
- Insufficient credit or unmet approval
- Resolve the account balance, sending approval or document requirement before repeating the operation.
- No result
- Handle empty inventory or a missing caller name as an ordinary outcome. Do not assume a syntactically valid number has every service.
- Network timeout or service failure
- Use bounded retries with backoff for reads. For a purchase, send or registration, inspect the operation state first; retrying an accepted request can duplicate a billable action.
Idempotency support belongs to each API family. The Emergency API supports retry keys; that does not make arbitrary v3 requests idempotent. Keep timestamps, returned IDs and redacted responses for support.
Continue with your account’s reference
The signed-in reference filters operations by your permissions and enabled services. Use its exact host, credential type, request fields and response schema. The consoles can execute live operations, including purchases and messages.