Help Center TurboSMS API Compatibility

TurboSMS API Compatibility

Ganap na sinusuportahan ng SMSBAT ang isang layer ng compatibility sa TurboSMS API. Nagbibigay-daan ito sa iyong i-migrate ang iyong mga umiiral nang pagsasama na idinisenyo para sa TurboSMS nang direkta sa SMSBAT nang hindi kinakailangang muling isulat ang mga istruktura ng mensahe o mga endpoint na payload.

Sinusuportahan namin ang pagpapadala ng mga mensahe ng SMS at Viber (kabilang ang mga advanced na feature tulad ng mga carousel at survey), pagkuha ng mga status, at pagkuha ng mga detalye ng mensahe gamit ang eksaktong parehong mga istruktura ng katawan ng kahilingan na pamilyar na sa iyo.

Pagpapatunay

Ang tanging pagkakaiba sa native na TurboSMS API ay ang Authentication mechanism. Habang gumagamit ang TurboSMS ng custom na parameter ng query na token o isang partikular na auth header, nangangailangan ang SMSBAT ng karaniwang Bearer Token.

Dapat mong isama ang iyong SMSBAT API Token sa header ng Authorization para sa lahat ng kahilingan:

Authorization: Bearer YOUR_SMSBAT_TOKEN

Base URL

Ang lahat ng mga endpoint ay dapat na nakadirekta sa SMSBAT API base URL:

https://restapi.smsbat.com

Magpadala ng Isang Mensahe

Endpoint: POST /api/tsms/message/send

Nagbibigay-daan sa pagpapadala ng mga mensahe ng SMS at Viber na may suporta para sa hybrid na paghahatid (Viber na may SMS fallback). Pinoproseso nito ang isang kahilingan sa pagpapadala at ibinabalik ang mga resulta ng paghahatid para sa bawat tatanggap.

Mga Pangunahing Kakayahan

  • Mga Flexible na Parameter: Maaaring ma-override ng mga partikular na parameter ng SMS/Viber ang mga pandaigdigang parameter.
  • Nilalaman: Sinusuportahan ang Viber carousels, survey, file attachment, at interactive na button.
  • Error Handling: Ibinabalik ang HTTP 200 kahit na para sa mga error (structured error responses). response_code: 999 na may status na FATAL_ERROR para sa mga error sa system.
  • Mga Error sa Tatanggap: Ang mga partikular na error sa tatanggap ay ibinalik sa hanay ng response_result. Ang mga nabigong tatanggap ay may message_id: null at mga partikular na error code.

Halimbawa ng Kahilingan (Hybrid Message)

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

Halimbawa ng Kahilingan (Viber Survey)

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

Magpadala ng Maramihang Mensahe (Batch)

Endpoint: POST /api/tsms/message/sendmulti

Binibigyang-daan ka ng paraang ito na magpadala ng maramihang kahilingan sa send sa isang kahilingan sa HTTP, na nagse-save sa overhead ng koneksyon. Ang pagtawag sa sendmulti na may data para sa 100 kahilingan ay magiging mas mabilis kaysa sa pagsasagawa ng 100 indibidwal na send na kahilingan.

Halimbawa ng Kahilingan

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

Halimbawa ng Tugon

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

Kumuha ng Katayuan ng Mensahe

Endpoint: POST /api/tsms/message/status

Kunin ang mga katayuan ng paghahatid ng mga ipinadalang mensahe sa pamamagitan ng pagbibigay ng kanilang message_id.

Halimbawa ng Kahilingan

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

Kumuha ng Mga Detalye ng Mensahe

Endpoint: POST /api/tsms/message/details

Binibigyang-daan kang kumuha ng detalyadong impormasyon tungkol sa mga ginawang mensahe, kabilang ang buong mga detalye ng payload para sa mga channel ng SMS at Viber, pagpepresyo, at eksaktong timestamp.

Halimbawa ng Kahilingan

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

Halimbawa ng Tugon

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