Přeskočit obsah

Integrace Node.js

Integraci SMSBAT API do vaší aplikace Node.js lze provést pomocí nativního rozhraní API fetch (Node.js 18+) nebo oblíbené knihovny axios.

Použití Axios (doporučeno)

Nejprve nainstalujte Axios přes npm nebo přízi:

npm install axios
# or
yarn add axios

Poté pomocí následujícího kódu odešlete zprávu:

const axios = require('axios');

async function sendMessage() {
  const url = 'https://api.smsbat.com/bat/messagelist';
  const apiKey = 'YOUR_API_KEY_HERE';

  const payload = {
    messages: [
      {
        from: 'ALPHANAME',
        to: '380501234567',
        text: 'Hello from Node.js and Axios!',
        type: 'sms'
      }
    ]
  };

  try {
    const response = await axios.post(url, payload, {
      headers: {
        'Content-Type': 'application/json',
        'X-Authorization-Key': apiKey
      },
      timeout: 10000
    });

    console.log(`Status Code: ${response.status}`);
    console.log('Response:', response.data);
  } catch (error) {
    console.error('An error occurred:', error.message);
    if (error.response) {
      console.error('Error Details:', error.response.data);
    }
  }
}

sendMessage();

Používání nativního načítání (Node.js 18+)

Pokud používáte Node.js 18 nebo novější, můžete použít vestavěné globální rozhraní API „fetch“:

async function sendMessageWithFetch() {
  const url = 'https://api.smsbat.com/bat/messagelist';
  const apiKey = 'YOUR_API_KEY_HERE';

  const payload = {
    messages: [
      {
        from: 'ALPHANAME',
        to: '380501234567',
        text: 'Hello from Node.js Native Fetch!',
        type: 'sms'
      }
    ]
  };

  try {
    const response = await fetch(url, {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'X-Authorization-Key': apiKey
      },
      body: JSON.stringify(payload)
    });

    const data = await response.json();

    if (!response.ok) {
      throw new Error(`HTTP error! status: ${response.status}, details: ${JSON.stringify(data)}`);
    }

    console.log(`Status Code: ${response.status}`);
    console.log('Response:', data);
  } catch (error) {
    console.error('An error occurred:', error.message);
  }
}

sendMessageWithFetch();