API

Integração simples para envio de SMS por API
Saldo disponível Activo

0.00 MZN

SMS estimados: 0

Preço estimado por SMS: 3.25 MZN

API Key

Chave actual
A carregar...
Criada em:

Informação base

Base URL
https://apisms.olysphere.com
Autenticação
Header x-api-key
Formato
JSON

Endpoint principal

POST /v1/sms/send

Envia uma mensagem SMS para um ou vários destinatários usando a tua API key.

Headers
x-api-key: SUA_API_KEY Content-Type: application/json
Body
{ "provider": "sendit", "to": ["258841234567", "258861234567"], "message": "O seu código é 1234" }
Resposta de sucesso
{ "ok": true, "message": "SMS sent successfully", "data": { "totalRecipients": 2, "successCount": 2, "failedCount": 0, "segments": 2, "totalCost": 3.5, "status": "sent", "provider": "sendit" } }

Exemplo em cURL

curl -X POST "https://apisms.olysphere.com/v1/sms/send" \ -H "Content-Type: application/json" \ -H "x-api-key: SUA_API_KEY" \ -d '{ "provider": "sendit", "to": ["258841234567", "258861234567"], "message": "Promoção válida hoje" }'

Exemplo em JavaScript

fetch("https://apisms.olysphere.com/v1/sms/send", { method: "POST", headers: { "Content-Type": "application/json", "x-api-key": "SUA_API_KEY" }, body: JSON.stringify({ "provider": "sendit", to: ["258841234567"], message: "Olá! Este é um teste." }) }) .then(res => res.json()) .then(data => console.log(data)) .catch(err => console.error(err));

Consultar saldo

GET /v1/sms/balance

Consulta o saldo disponível da conta associada à API key.

Headers
x-api-key: SUA_API_KEY
Resposta de sucesso
{ "ok": true, "data": { "balance": 1250, "currency": "MZN", "estimatedSmsUnitPrice": 2.5, "estimatedSmsAvailable": 500, "account": { "id": "user_id", "name": "Nome", "email": "email@email.com" } } }

Exemplo em cURL

curl -X GET "https://apisms.olysphere.com/v1/sms/balance" \ -H "x-api-key: SUA_API_KEY"

Exemplo em JavaScript

fetch("https://apisms.olysphere.com/v1/sms/balance", { method: "GET", headers: { "x-api-key": "SUA_API_KEY" } }) .then(res => res.json()) .then(data => console.log(data)) .catch(err => console.error(err));

Testar endpoint de saldo

{ }

Notas

  • Os números devem ir no formato normalizado, por exemplo: 258841234567.
  • A API suporta dois providers: tsemba e sendit.
  • tsemba é o provider económico: custa 1,75 MZN / SMS.
  • tsemba não suporta acentos, emojis ou caracteres especiais. Use apenas texto simples sem unicode.
  • sendit é o provider premium: custa 3,25 MZN / SMS.
  • sendit suporta acentos e caracteres unicode.
  • O custo final depende do número de destinatários, provider escolhido e quantidade de partes SMS.
  • Uma mensagem normal tem até 160 caracteres. Mensagens maiores podem ser divididas em várias partes.
  • Se o saldo for insuficiente, a API devolve erro e a mensagem não será enviada.
  • A API key deve ser mantida em segredo e nunca exposta no frontend público.
  • Envie a API key no header x-api-key.
  • Máximo de 100 requests por minuto por API key.
  • Para envios em massa, recomenda-se agrupar destinatários no mesmo request em vez de fazer muitos requests individuais.