Cómo enviar una API de WhatsApp usando NodeJS

Introducción

  • En este fragmento de código, se aprende a enviar una API de WhatsApp usando NodeJS, para enviar un mensaje de texto, plantillas de WhatsApp, medios de comunicación, botones interactivos, listas, productos … etc, Alvochat cuenta es necesaria para ejecutar los siguientes códigos. Crea una cuenta si no la tienes.

  • Los siguientes códigos usan NodeJS usando Native request, si quieres enviar una API de WhatsApp con Javascript usando otra librería puedes ver los códigos desde aquí.

Envía una plantilla usando la API de WhatsApp con NodeJS

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/template",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "name": "hello_world",
    "language": "en_us",
    "header": "",
    "body": "",
    "buttons": "",
    "priority": ""
});
req.write(postData);
req.end();

Enviar un mensaje de texto usando la API de WhatsApp con NodeJS

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/chat",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "body": "WhatsApp API on alvochat.com works good",
    "priority": "",
    "preview_url": "",
    "message_id": ""
});
req.write(postData);
req.end();

Enviar imagen

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/image",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "image": "https://alvochat-example.s3-accelerate.amazonaws.com/image/1.jpeg",
    "caption": "image caption",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Enviar audio

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/audio",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "audio": "https://alvochat-example.s3-accelerate.amazonaws.com/audio/1.mp3",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Enviar vídeo

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/video",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "video": "https://alvochat-example.s3-accelerate.amazonaws.com/video/1.mp4",
    "caption": "video caption",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Enviar documento

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/document",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "document": "https://alvochat-example.s3-accelerate.amazonaws.com/document/1.pdf",
    "filename": "",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Enviar pegatina

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/sticker",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "sticker": "https://alvochat-example.s3-accelerate.amazonaws.com/sticker/1.webp",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Enviar contacto

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/contact",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "contact": "",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Enviar ubicación

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/location",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "lat": 37.484296000000000503860064782202243804931640625,
    "lng": -122.1487029999999975871105561964213848114013671875,
    "address": "Menlo Park, California, United States",
    "name": "Meta Headquarters",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Enviar lista

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/list",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "header": "header",
    "body": " please select one of the following options",
    "footer": "footer",
    "button": "options",
    "sections": "option_1,option_2,option_3",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Botón de envío

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/button",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "header": "header",
    "body": " please select one of the following options",
    "footer": "footer",
    "buttons": "option_1,option_2,option_3",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Enviar productos

var qs = require("querystring");
var http = require("https");

var options = {
  "method": "POST",
  "hostname": "api.alvochat.com",
  "port": null,
  "path": "/instance1199/messages/product",
  "headers": {
    "content-type": "application/x-www-form-urlencoded"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
var postData = qs.stringify({
    "token": "YourToken",
    "to": 16315555555,
    "header": "header",
    "body": "Hi , check out our new products",
    "footer": "footer",
    "catalog_id": "",
    "product": "",
    "priority": "",
    "message_id": ""
});
req.write(postData);
req.end();

Puede ver la documentación completa de la API de Whatsapp aquí.