Integration tools

API playground, integration PDF, OpenAPI, Postman, and AI skill files — everything you need to integrate MarzSms faster.

API playground

Interactive docs for every endpoint — enter your API key and secret, send requests, and see live responses.

Open API playground

Integration guide (PDF)

A printable integration manual — authentication, every SMS API endpoint, top-up flow, error codes, and go-live checklist.

Download integration guide (PDF)

OpenAPI & Postman

Machine-readable API spec and a ready-to-run Postman collection for send SMS, balance, history, and top-up.

OpenAPI: Import into Swagger UI, Insomnia, or SDK generators. Server URL is pre-filled for this environment.

Postman: Import the JSON file → set collection variables apiKey and apiSecret → send requests (Basic Auth is configured on the collection).

marzsms-integration skill

Full reference for send SMS, balance, history, top-up, auth, and error codes — ready for Cursor, Claude, ChatGPT, and other AI tools.

AI assistants (Cursor, Claude, ChatGPT)

Cursor (recommended)

  1. Download the ZIP above and extract it.
  2. Copy the marzsms-integration folder into your project at .cursor/skills/
  3. Final path: .cursor/skills/marzsms-integration/SKILL.md
  4. In Cursor, ask: "Integrate MarzSMS send SMS and balance checks in this app" — the agent will follow the skill automatically.

Claude / ChatGPT / other AI

  1. Download SKILL.md.
  2. Upload it as project knowledge, or paste its contents into the chat.
  3. Add your stack and goal, for example:
Use the attached MarzSMS skill. Integrate send SMS and account balance in my Laravel app.
API base: https://sms.wearemarz.com/api/v1
I already have API keys in .env.

Copy the starter prompt

No download needed — paste this into any AI assistant along with a link to these docs.

Integrate MarzSms SMS + Airtime API.

Docs: https://sms.wearemarz.com/docs
API base: https://sms.wearemarz.com/api/v1
Auth: HTTP Basic (api_key:api_secret as base64)

Build:
1. POST /sms/send — send SMS (comma-separated recipients; ≥2 = queued 202)
2. GET /account/balance — check balance and cost_per_sms
3. GET /sms/history — paginated history
4. POST /account/topup — MoMo top-up + poll GET /account/topup/{reference}
5. GET /airtime/catalog — networks + data bundles (use product_id as bundle_id)
6. GET /airtime/detect-network?msisdn=… — optional network preview
7. POST /airtime — purchase_type airtime (amount) or bundle (bundle_id; no amount)
8. Poll GET /airtime/{reference} when status is pending (Airtel data may return 202)
9. GET /airtime — purchase history
10. Optional: POST /phone-verification/verify — confirm registered name before airtime/data
11. Env vars for credentials — never hardcode

Shared wallet for SMS and airtime/data. Name confirmation is a free airtime/data add-on. Lyca is airtime-only.
Stack: [your framework here]

What's in the skill file?

  • Send SMS (single + bulk queue behaviour)
  • Account balance, SMS history, and mobile-money top-up
  • Airtime & data (MTN / Airtel / Lyca) — catalog, detect-network, purchase, status, history
  • Optional confirm-recipient-name add-on before airtime/data purchase
  • HTTP Basic Auth and credential setup
  • Request/response examples and error codes
  • PHP, Node.js, and Python snippets + integration checklist

Full human-readable docs: API playground, API Documentation.