Skip to content

Integrare Node.js

Integrarea API-ului SMSBAT în aplicația dvs. Node.js se poate face folosind API-ul nativ fetch (Node.js 18+) sau populara bibliotecă axios.

Utilizarea Axios (recomandat)

Mai întâi, instalați Axios prin npm sau cu fire:

npm install axios
# or
yarn add axios

Apoi, utilizați următorul cod pentru a trimite un mesaj:

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();

Utilizarea Native Fetch (Node.js 18+)

Dacă utilizați Node.js 18 sau mai nou, puteți utiliza API-ul global fetch încorporat:

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();