Bỏ qua

Tích hợp Python

Việc tích hợp API SMSBAT vào ứng dụng Python của bạn thật đơn giản bằng cách sử dụng thư viện urllib tích hợp sẵn hoặc thư viện requests phổ biến.

Sử dụng Yêu cầu (Được khuyến nghị)

Đầu tiên cài đặt thư viện request:

pip install requests

Sau đó, sử dụng đoạn mã sau để gửi tin nhắn:

import requests
import json

url = 'https://api.smsbat.com/bat/messagelist'
api_key = 'YOUR_API_KEY_HERE'

headers = {
    'Content-Type': 'application/json',
    'X-Authorization-Key': api_key
}

payload = {
    "messages": [
        {
            "from": "ALPHANAME",
            "to": "380501234567",
            "text": "Hello from Python and SMSBAT!",
            "type": "sms"
        }
    ]
}

try:
    response = requests.post(url, headers=headers, json=payload, timeout=10)
    response.raise_for_status() # Raise an exception for HTTP errors

    print(f"Status Code: {response.status_code}")
    print(f"Response: {response.json()}")

except requests.exceptions.RequestException as e:
    print(f"An error occurred: {e}")
    if hasattr(e, 'response') and e.response is not None:
        print(f"Error Details: {e.response.text}")

Sử dụng aiohttp (Không đồng bộ)

Nếu bạn đang xây dựng một ứng dụng không đồng bộ (ví dụ: sử dụng FastAPI hoặc asyncio), bạn có thể sử dụng aiohttp:

pip install aiohttp
import aiohttp
import asyncio

async def send_message():
    url = 'https://api.smsbat.com/bat/messagelist'
    api_key = 'YOUR_API_KEY_HERE'

    headers = {
        'Content-Type': 'application/json',
        'X-Authorization-Key': api_key
    }

    payload = {
        "messages": [
            {
                "from": "ALPHANAME",
                "to": "380501234567",
                "text": "Hello from Async Python!",
                "type": "sms"
            }
        ]
    }

    async with aiohttp.ClientSession() as session:
        try:
            async with session.post(url, headers=headers, json=payload) as response:
                print(f"Status Code: {response.status}")
                result = await response.json()
                print(f"Response: {result}")
        except Exception as e:
            print(f"An error occurred: {e}")

# Run the async function
if __name__ == '__main__':
    asyncio.run(send_message())