Australian
SMS API

Direct-to-carrier SMS
1.6¢ on your first purchase

✓ 50 FREE SMS credits included when you sign up

✓ Integrate with ChatGPT, Claude or your AI coding tool

send-sms
curl -u username:password \
  -X POST https://api.mobilemessage.com.au/v1/messages \
  -d '{
        "to": "0400123456",
        "message": "Hi Sarah, your order #1042 has shipped!",
        "sender": "ACME"
      }'
ACME
Hi Sarah, your order #1042 has shipped!
✓ Delivered just now

Send Your First SMS in Minutes

Create a free account, grab your API key, and make one POST request.

curl -u api_username:api_password \
  -X POST https://api.mobilemessage.com.au/v1/messages \
  -H "Content-Type: application/json" \
  -d '{
    "messages": [
      {
        "to": "0412345678",
        "message": "Your appointment is confirmed for 10am tomorrow.",
        "sender": "CompanyABC"
      }
    ]
  }'
<?php
$data = [
  "messages" => [
    [
      "to" => "0412345678",
      "message" => "Your appointment is confirmed for 10am tomorrow.",
      "sender" => "CompanyABC"
    ]
  ]
];

$ch = curl_init('https://api.mobilemessage.com.au/v1/messages');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, "api_username:api_password");
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
echo $response;
const body = {
  messages: [
    {
      to: "0412345678",
      message: "Your appointment is confirmed for 10am tomorrow.",
      sender: "CompanyABC"
    }
  ]
};

fetch('https://api.mobilemessage.com.au/v1/messages', {
  method: 'POST',
  headers: {
    'Authorization': 'Basic ' + btoa('api_username:api_password'),
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(body)
})
.then(r => r.json())
.then(console.log);
import requests
from requests.auth import HTTPBasicAuth

data = {
    "messages": [
        {
            "to": "0412345678",
            "message": "Your appointment is confirmed for 10am tomorrow.",
            "sender": "CompanyABC"
        }
    ]
}

response = requests.post('https://api.mobilemessage.com.au/v1/messages',
                         json=data, auth=HTTPBasicAuth('api_username', 'api_password'))
print(response.json())
{
  "status": "complete",
  "send_id": 42,
  "total_cost": 1,
  "results": [
    {
      "to": "0412345678",
      "status": "success",
      "cost": 1,
      "message_id": "abcd1234-efgh-5678..."
    }
  ]
}

1.6¢

per SMS on your first purchase, pay as you go.

10,000

messages in a single request.

50

free credits to test with.

Build with your AI assistant

Our API docs are available as plain Markdown, so ChatGPT, Claude, Cursor, Copilot and other coding tools can read them directly. Copy the docs into your tool, open them in a chat, or paste the integration prompt below to get accurate, working code first time.

Copy an integration prompt for your AI tool
I'm integrating the Mobile Message SMS API (Australia). Before writing any code, read the full API reference at https://mobilemessage.com.au/llms-full.txt. The OpenAPI 3.0 spec is at https://mobilemessage.com.au/assets/openapi.json if you need exact schemas.

Follow these rules:
1. Only use endpoints, parameters and response fields that appear in that documentation. Never invent or guess. If the docs don't cover something, say so and point me to the relevant section or to https://help.mobilemessage.com.au/.
2. Base URL is https://api.mobilemessage.com.au/. Auth is HTTP Basic using an API username and password created in the dashboard (app.mobilemessage.com.au, Settings > API). Use my language's native Basic-auth helper rather than hand-building the header.
3. Send with POST /v1/messages (up to 10,000 messages per request). Always include an Idempotency-Key header (a UUID per batch) so a retry after a timeout can't double-send.
4. The account allows 5 concurrent requests. HTTP 429 means wait for an in-flight request to finish, then retry. There is no per-second rate limit.
5. Australian mobile numbers only. Every timestamp the API accepts or returns is UTC.
6. The sender must be a sender ID already approved on the account. Use GET /v1/senders to list them; don't assume one exists.
7. Emojis and other non-GSM characters need enable_unicode set to true, which switches to UCS-2 and shortens each part from 153 to 67 characters. Mention this whenever message length matters.
8. Webhook handlers (inbound messages and delivery receipts) must return 2xx within 5 seconds and be idempotent, because deliveries are retried and can arrive out of order.
9. Handle errors by status: 401 credentials, 400 malformed request, 403 insufficient credits, 429 concurrency, 5xx retry with the same Idempotency-Key.
10. New accounts include 50 free credits, so I can test with real messages straight away. If I need to test without delivering to handsets, a sandbox account is available from hello@mobilemessage.com.au, and on a sandbox, numbers ending in 000 simulate a failed delivery.

Give me a minimal working example in my language, then ask what I'm building.
Paste this as the first message in ChatGPT, Claude, Cursor or Claude Code. It tells the assistant where the docs are and the rules that prevent the usual mistakes. See using AI coding tools with the Mobile Message API for setup tips per tool.
Rated 4.9 out of 5
1,483 reviews
Rated 4.9 out of 5
270 reviews
Easy Gateway Integration

Connect effortlessly with our developer-friendly API for seamless SMS functionality.

Direct-to-Carrier Delivery

Experience reliable delivery with our direct connections to Australian carriers.

Real-Time Delivery Reports

Monitor your campaigns with instant status updates and detailed delivery information.

Built for Developers, by Developers

Integrate quickly, scale easily, and send confidently.

1Clear and Detailed Documentation

Comprehensive API references, and code samples to help you integrate quickly.

2RESTful JSON API

Modern API endpoints compatible with PHP, Node.js, Python, Java, and more.

3Real-Time Webhooks

Instant notifications for delivery statuses and inbound SMS directly to your system. Turn on optional HMAC signing and every webhook arrives with a signature your receiver can verify.

4Safe Retries & Scheduling

Idempotency keys, scheduled sends, and staggered delivery for large campaigns.

5Flexible Sender ID Management

Use your business name or dedicated number to support two-way SMS and build brand trust.

6Scalable & Reliable Infrastructure

Fast and reliable delivery through Australian-based, high-availability infrastructure.

7AI-Ready Documentation

Our docs are published as Markdown, llms.txt and an OpenAPI spec, so ChatGPT, Claude, Cursor and Copilot can read them directly. Paste our starter prompt into your AI tool and it has everything it needs to write the integration for you.

8Detailed Error Reporting

Simple debugging and clearly documented error messages for rapid troubleshooting.

9Secure, Encrypted Communications

HTTPS-secured API requests to ensure your data remains private and secure.

10Link Shortening and Click Tracking

Set shorten_urls to true and any link in your message is shortened automatically, with clicks tracked for each recipient. Retrieve click data with the link tracking endpoint.

Common API Use Cases

Transactional Notifications
Transactional Notifications

Send real-time alerts, order confirmations, and security notifications seamlessly.

Two-Way Messaging
Two-Way Messaging

Integrate interactive messaging with your CRM for customer support and feedback.

Promotional Campaigns
Promotional Campaigns

Run targeted marketing campaigns with personalized bulk messaging.

Appointment Reminders
Appointment Reminders

Ensure customers never miss an appointment with timely SMS reminders.

Two-Factor Authentication
Two-Factor Authentication

Deliver one-time passwords and verification codes in seconds to secure logins and transactions.

Order and Delivery Updates
Order & Delivery Updates

Keep customers in the loop from dispatch to doorstep with automated status texts.

App Integrations

Looking for a no-code connection to our service? Connect to more than 7,000 apps, to send and receive SMS messages automatically.

FAQ

Sign up for a free account, access your API credentials, and follow our comprehensive API documentation to integrate SMS functionality into your application. See Getting started with the API for a step-by-step guide.

Yes. Our API documentation is published as Markdown and llms.txt, with an OpenAPI spec, so AI assistants can read the full reference directly. Copy the starter prompt into ChatGPT, Claude, Cursor or Claude Code and it points the assistant to the docs and the rules that matter, such as idempotency keys, approved sender IDs and webhook handling.

Our API uses JSON-based REST protocols to ensure smooth integration and efficient communication with your systems.

Yes, our API supports real-time delivery receipts and webhooks to keep you informed about the status of each SMS message. See Setting up webhooks for the configuration steps.

Your first purchase is just 1.6¢ per SMS at any volume, then standard rates run from 2¢ to 4¢ depending on how many credits you buy. See our SMS pricing page for more details.

Yes. Messages sent from a dedicated number support two-way SMS. Replies are pushed to your system in real time via webhooks, or you can retrieve them with the inbound messages endpoint. See the inbound messages reference. If you'd rather not write code for it, SMS automations can reply, forward, or post inbound messages to a webhook for you.

You can send from your business name, a dedicated number, or your own verified mobile number. ACMA sender ID registration is handled within your account. See choosing a sender for the options.

A single request can include up to 10,000 messages, and each account allows up to 5 simultaneous requests. For large sends and retry logic, the API supports Idempotency-Key headers so network retries never cause duplicate sends.

Yes. Every new account includes 50 free SMS credits, so you can create an API key and send real messages before paying anything. Create your free account to get started.

Ready to Integrate Our SMS Gateway?

Sign up now and unlock seamless SMS integration with direct-to-carrier delivery and real-time reporting.