REST API
Modern HTTP API with interactive documentation
Interactive API Documentation
Our REST API comes with built-in Swagger UI documentation. Test API calls directly in your browser, explore all endpoints, and generate code snippets.
Open Swagger UI OpenAPI Schema (JSON)API Features
Modern REST Design
Clean JSON responses, standard HTTP methods, meaningful status codes.
Bearer Token Auth
Secure authentication with API tokens. No passwords in URLs.
OpenAPI 3.0
Auto-generated schema for code generation and IDE integration.
Legacy Compatible
Existing integrations continue to work via PHP proxies.
Available Endpoints
SMS Sending /api/v1/sms/
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/sms/send/ |
Send SMS via HTTP GET (legacy compatible) |
| POST | /api/v1/sms/send/ |
Send SMS via HTTP POST (recommended) |
Team Management /api/v1/teamlist/
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/teamlist/credit/ |
Get SMS quota and usage |
| GET | /api/v1/teamlist/info/ |
Get team name and information |
| GET | /api/v1/teamlist/key/ |
Get team keyword |
| GET | /api/v1/teamlist/lists/ |
List all team lists |
| GET | /api/v1/teamlist/members/ |
List all members of a team list |
| GET | /api/v1/teamlist/member/ |
Get a single member |
| POST | /api/v1/teamlist/member/ |
Create member |
| PUT | /api/v1/teamlist/member/ |
Update member |
| DELETE | /api/v1/teamlist/member/ |
Delete member |
| GET | /api/v1/teamlist/sendkeys/ |
Get send permission keywords |
| PUT | /api/v1/teamlist/sendkeys/ |
Set send permission keywords |
Delivery Logs /api/v1/logging/
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/logging/sms/ |
Get SMS delivery log with pagination |
| GET | /api/v1/logging/statuscodes/ |
List all delivery status codes |
| GET | /api/v1/logging/reasoncodes/ |
List all reason codes |
Message Widget /api/v1/widget/
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/widget/messages/ |
Get team messages as JSON |
| GET | /api/v1/widget/embed.html |
Get HTML widget for embedding |
SMS Send Parameters
Parameters for POST /api/v1/sms/send/
| Parameter | Required | Description |
|---|---|---|
team_id |
Yes | Team ID / Customer number |
teamlist_email |
Yes* | Team list address (e.g. 'mylist@tmsg.de') |
tl |
Yes* | Teamlist ID (alternative to teamlist_email) |
message |
Yes | Message text (max. 1600 characters) |
to_mobile |
Yes | Recipient phone number(s), comma-separated |
sender_email |
Closed groups | Sender email for authentication. Required for closed groups – must match a registered member's email. |
keyword |
If configured | Authentication keyword. Required if a send permission keyword is configured for the team list – even when using Bearer token authentication. |
from_mobile |
No | SMS sender ID override (alphanumeric or phone number) |
test |
No | Test mode (1 = validate only, no actual sending) |
date |
No | Scheduled send date (YYYY-MM-DD) |
time |
No | Scheduled send time (HH:MM) |
flash |
No | Flash SMS (1 = display directly on screen, not stored) |
ucs2 |
No | UCS2 encoding (1 = Unicode support for special characters) |
* Either teamlist_email or tl must be provided. If both are given, tl takes precedence.
Authentication
Bearer Token Authentication
Create an API token in your account settings and include it in the Authorization header:
Authorization: Bearer your-api-token-here
Secure, easy to rotate, no passwords in logs
Manage API TokensNote: This documentation covers the modern REST API. If you have existing integrations using the legacy HTTP interface, they will continue to work unchanged.
Quick Examples
Send SMS with cURL
curl -X POST "https://www.teammessage.eu/api/v1/sms/send/" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"team_id": 12345,
"teamlist_email": "myteam@tmsg.de",
"message": "Hello World!",
"to_mobile": "+4917612345678",
"sender_email": "john@example.com"
}'
Check SMS Credit
curl "https://www.teammessage.eu/api/v1/teamlist/credit/?tm=12345&tl=67890" \
-H "Authorization: Bearer YOUR_TOKEN"
Python Example
import requests
response = requests.post(
"https://www.teammessage.eu/api/v1/sms/send/",
headers={"Authorization": "Bearer YOUR_TOKEN"},
json={
"team_id": 12345,
"teamlist_email": "myteam@tmsg.de",
"message": "Hello from Python!",
"to_mobile": "+4917612345678",
"sender_email": "john@example.com"
}
)
print(response.json())
Ready to integrate?
Explore all endpoints interactively with our Swagger documentation.
Open API Documentation