Help Center TurboSMS API kompatibilnost

TurboSMS API kompatibilnost

SMSBAT u potpunosti podržava sloj kompatibilnosti sa TurboSMS API. Ovo vam omogućava da migrirate svoje postojeće integracije koje su dizajnirane za TurboSMS direktno na SMSBAT bez potrebe za prepisivanjem struktura poruka ili korisnih podataka krajnje tačke.

Podržavamo slanje SMS i Viber poruka (uključujući napredne funkcije kao što su vrtuljke i ankete), dohvaćanje statusa i dohvaćanje detalja poruke koristeći potpuno iste strukture tijela zahtjeva koje su vam već poznate.

Autentifikacija

Jedina razlika u odnosu na izvorni TurboSMS API je mehanizam autentifikacije. Dok TurboSMS koristi prilagođeni parametar upita token ili specifično auth zaglavlje, SMSBAT zahtijeva standardni Bearer Token.

Morate uključiti svoj SMSBAT API token u zaglavlje Authorization za sve zahtjeve:

Authorization: Bearer YOUR_SMSBAT_TOKEN

Osnovni URL

Sve krajnje tačke treba da budu usmerene na SMSBAT API osnovni URL:

https://restapi.smsbat.com

Pošalji jednu poruku

Krajnja tačka: POST /api/tsms/message/send

Omogućava slanje SMS i Viber poruka uz podršku za hibridnu isporuku (Viber sa rezervnim SMS-om). Obrađuje jedan zahtjev za slanje i vraća rezultate isporuke za svakog primatelja.

Ključne mogućnosti

  • Fleksibilni parametri: Globalni parametri se mogu nadjačati određenim SMS/Viber parametrima.
  • Sadržaj: Podržava Viber vrtuljke, ankete, priloge datoteka i interaktivna dugmad.
  • Upravljanje greškama: Vraća HTTP 200 čak i za greške (strukturirani odgovori na greške). response_code: 999 sa statusom FATAL_ERROR za sistemske greške.
  • Greške primaoca: Određene greške primaoca se vraćaju u nizu response_result. Neuspjeli primatelji imaju message_id: null i specifične kodove grešaka.

Primjer zahtjeva (hibridna poruka)

{
  "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
  }
}

Primjer zahtjeva (Viber vrtuljak)

{
  "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"
      }
    ]
  }
}

Primjer zahtjeva (Viber anketa)

{
  "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"
    ]
  }
}

Pošalji višestruke poruke (skupno)

Krajnja tačka: POST /api/tsms/message/sendmulti

Ova metoda vam omogućava da pošaljete više zahtjeva za pošalji u jednom HTTP zahtjevu, štedeći troškove veze. Pozivanje sendmulti sa podacima za 100 zahtjeva bit će brže od izvršavanja 100 pojedinačnih send zahtjeva.

Primjer zahtjeva

{
  "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
    }
  }
}

Primjer odgovora

{
    "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": { ... }
    }
}

Dobiti status poruke

Krajnja tačka: POST /api/tsms/message/status

Dohvatite statuse isporuke poslanih poruka dajući njihov message_id.

Primjer zahtjeva

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

Dobijte detalje o poruci

Krajnja tačka: POST /api/tsms/message/details

Omogućava vam da dohvatite detaljne informacije o kreiranim porukama, uključujući pune podatke o korisnom učitavanju za SMS i Viber kanale, cijene i točne vremenske oznake.

Primjer zahtjeva

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

Primjer odgovora

{
    "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"
        }
    ]
}