API Documentation

Welcome to the LuckCreators Developer Portal. Our high-performance SMS gateway provides robust APIs for integrating enterprise messaging into your applications via HTTP and SMPP channels.

Base URL:

https://sms-client.luckcreators.com

Authentication

Access to our API is secured via API Keys. You can generate and manage your keys in the Developer Settings section of your dashboard.

Header: Authorization: Bearer YOUR_API_KEY
OR Query Param: api_key=YOUR_API_KEY

HTTP API Integration

The simplest way to send messages is via our RESTful HTTP endpoint. This channel supports both GET and POST requests.

POST/GET /api/v1/send/

Parameters

Parameter Type Status Description
api_key String Required* Your secret API key. Required if not passed in Header.
from String Required Approved Sender ID (e.g. "LuckCreators").
to String Required Recipient number in International format (e.g. 233...).
content String Required The message text. Supports GSM & UTF-8.

Code Example (Python)

python
import requests

url = "https://sms-client.luckcreators.com/api/v1/send/"
headers = {
    "Authorization": "Bearer YOUR_API_KEY"
}
payload = {
    "from": "LuckCreators",
    "to": "233501234567",
    "content": "Hello! This is a test via the new V1 API."
}

response = requests.post(url, json=payload, headers=headers)
print(response.json())

SMPP Integration

For high-volume messaging and two-way communication, we recommend using the SMPP v3.4 protocol. Connect your SMPP client using the following details:

Hostsms-client.luckcreators.com
Port2775
System IDyour_username
Passwordyour_password
Version3.4

PDU Settings

Response Dictionary

The HTTP API returns a plain text string indicating the outcome of the request.

Response HTTP Code Meaning
Success "UUID" 200 Message accepted by the gateway. UUID is the tracking ID.
(14) Invalid Password 401 Authentication failed. Check your username/password.
Connection failed 400 Unable to reach the upstream gateway.
PDU Error 400 Invalid PDU format or parameters.

Status Check API

Query the real-time delivery status of any message using the message_id received during submission.

GET /api/v1/status/?msgid=UUID

Example Response

{
    "status": "success",
    "data": {
        "message_id": "f48c1e28-...",
        "status": "DELIVERED",
        "updated_at": "2023-10-27T14:30:05Z"
    }
}

Webhooks (DLR Push)

Instead of polling our API, you can configure a Webhook URL in your dashboard. We will push a POST request to your server as soon as a message status changes.

Webhook Payload

We send a JSON object with the following structure:

{
    "event": "sms.status_update",
    "data": {
        "message_id": "f48c1e28-...",
        "status": "DELIVERED",
        "sender_id": "LuckCreators",
        "recipient": "233501234567",
        "updated_at": "2023-10-27T14:30:05Z"
    }
}

Bulk Campaigns

Our portal supports batch processing via file uploads. When integrating via files, please adhere to these formatting rules:

Rule 1: One phone number per line.
Rule 2: No headers allowed (The first line must be a number).
Rule 3: International format (e.g., 233...) is required.

Delivery Reports (DLR)

Delivery reports are processed asynchronously. Once your message reaches the "Delivered" state, the status will be updated in your Submit Logs dashboard and pushed to your webhook automatically.