Help Center Compatibilitate API TurboSMS

Compatibilitate API TurboSMS

SMSBAT acceptă pe deplin un strat de compatibilitate cu API-ul TurboSMS. Acest lucru vă permite să migrați integrările existente care au fost concepute pentru TurboSMS direct la SMSBAT fără a fi nevoie să rescrieți structurile de mesaje sau încărcăturile utile ale punctelor finale.

Acceptăm trimiterea de mesaje SMS și Viber (inclusiv funcții avansate, cum ar fi carusele și sondaje), preluarea stărilor și preluarea detaliilor mesajelor folosind exact aceleași structuri de corp de solicitare cu care sunteți deja familiarizat.

Autentificare

Singura diferență față de API-ul nativ TurboSMS este mecanismul de autentificare. În timp ce TurboSMS utilizează un parametru de interogare personalizat „token” sau un antet de autentificare specific, SMSBAT necesită un Bearer Token standard.

Trebuie să includeți simbolul API SMSBAT în antetul „Autorizare” pentru toate solicitările:

Authorization: Bearer YOUR_SMSBAT_TOKEN

URL de bază

Toate punctele finale trebuie direcționate către adresa URL de bază a API-ului SMSBAT:

https://restapi.smsbat.com

Trimite un singur mesaj

Endpoint: POST /api/tsms/message/send

Permite trimiterea de mesaje SMS și Viber cu suport pentru livrare hibridă (Viber cu SMS de rezervă). Procesează o singură cerere de trimitere și returnează rezultatele livrării pentru fiecare destinatar.

Capabilități cheie

  • Parametri flexibili: Parametrii globali pot fi suprascriși de parametrii specifici SMS/Viber.
  • Conținut: acceptă carusele Viber, sondaje, fișiere atașate și butoane interactive.
  • Gestionarea erorilor: Returnează HTTP 200 chiar și pentru erori (răspunsuri de eroare structurate). response_code: 999 cu starea FATAL_ERROR pentru erori de sistem.
  • Erori destinatarului: erori specifice destinatarului sunt returnate în matricea response_result. Destinatarii nereușiți au message_id: null și coduri de eroare specifice.

Exemplu de solicitare (mesaj hibrid)

{
  "sender": "GlobalSender",
  "text": "Test message",
  "recipients": ["380951111111", "380952222222"],
  "start_time": "2025-09-29T10:00:00Z",
  "sequence_id": "seq_12345",
  "sms": {
    "sender": "SMSSender",
    "text": "SMS version of message",
    "is_flash": false
  },
  "viber": {
    "sender": "ViberSender",
    "text": "Viber version of message",
    "ttl": 3600,
    "image_url": "https://example.com/image.png",
    "caption": "Button text",
    "action": "https://google.com",
    "count_clicks": true,
    "is_transactional": false
  }
}

Exemplu de solicitare (Carusel Viber)

{
  "sender": "GlobalSender",
  "text": "Check out our products",
  "recipients": ["380951111111"],
  "viber": {
    "sender": "ViberSender",
    "text": "Check out our products",
    "is_transactional": false,
    "carousel": [
      {
        "title": "Product 1",
        "image_url": "https://example.com/product1.jpg",
        "button_caption": "Buy Now",
        "button_url": "https://example.com/buy/product1",
        "link_caption": "Learn More",
        "link_url": "https://example.com/product1"
      },
      {
        "title": "Product 2",
        "image_url": "https://example.com/product2.jpg",
        "button_caption": "Buy Now",
        "button_url": "https://example.com/buy/product2",
        "link_caption": "Learn More",
        "link_url": "https://example.com/product2"
      }
    ]
  }
}

Exemplu de solicitare (Sondaj Viber)

{
  "sender": "GlobalSender",
  "text": "Please rate our service",
  "recipients": ["380951111111"],
  "viber": {
    "sender": "ViberSender",
    "text": "Please rate our service",
    "is_transactional": true,
    "survey": [
      "Excellent",
      "Good",
      "Average",
      "Poor"
    ]
  }
}

Trimiteți mai multe mesaje (lot)

Endpoint: POST /api/tsms/message/sendmulti

Această metodă vă permite să trimiteți mai multe cereri „trimitere” într-o singură cerere HTTP, salvând supraîncărcarea conexiunii. Apelarea „sendmulti” cu date pentru 100 de cereri va fi mai rapidă decât executarea a 100 de cereri individuale „send”.

Exemplu de solicitare

{
  "batch_1": {
    "sender": "GlobalSender",
    "text": "Test message",
    "recipients": ["380982462128", "380501111111"],    
    "sms": {
        "sender": "SMSSender",
        "text": "SMS version of message"
    }
  },
  "batch_2": {
    "sender": "GlobalSender",
    "text": "Second message",
    "recipients": ["380501111111"],
    "viber": {
      "sender": "ViberSender",
      "text": "Viber message",
      "is_transactional": true
    }
  }
}

Exemplu de răspuns

{
    "response_code": 0,
    "response_status": "OK",
    "response_result": {
        "batch_1": {
            "response_code": 800,
            "response_status": "SUCCESS_MESSAGE_ACCEPTED",
            "response_result": [
                {
                    "phone": "380982462128",
                    "response_code": 0,
                    "message_id": "f1640579-ea75-4bc1-b708-1c3858bf222d",
                    "response_status": "OK"
                }
            ]
        },
        "batch_2": { ... }
    }
}

Obțineți starea mesajului

Punctul final: POST /api/tsms/message/status

Preluați starea de livrare a mesajelor trimise furnizând „message_id” al acestora.

Exemplu de solicitare

{
  "messages": [
      "573dcb46-7851-4e16-bb1f-721c13ef5f38", 
      "6b7f9ff5-28c8-4f38-913b-31af6021fbea"
  ]
}

Obțineți detalii despre mesaj

Endpoint: POST /api/tsms/message/details

Vă permite să preluați informații detaliate despre mesajele create, inclusiv detalii complete despre încărcarea utilă pentru canalele SMS și Viber, prețuri și marcaje de timp exacte.

Exemplu de solicitare

{
  "messages": [
      "573dcb46-7851-4e16-bb1f-721c13ef5f38", 
      "f1640579-ea75-4bc1-b708-1c3858bf222d"
  ]
}

Exemplu de răspuns

{
    "response_code": 0,
    "response_status": "OK",
    "response_result": [
        {
            "message_id": "573dcb46-7851-4e16-bb1f-721c13ef5f38",
            "sms": null,
            "viber": {
                "added": "2025-09-29T14:17:02.577Z",
                "start": "2025-09-29T10:00:00Z",
                "sent": "2025-09-29T14:17:02.577Z",
                "updated": "2025-09-29T14:17:02.577Z",
                "sender": "ViberSender",
                "text": "Viber version of message",
                "recipient": "380982462128",
                "message_type": "promotional",
                "status": "Queued",
                "price": 0,
                "ttl": 3600,
                "caption": "Button text",
                "action": "https://google.com"
            },
            "response_code": 0,
            "response_status": "OK"
        }
    ]
}