How you can use Node.js to send messages via WhatsApp with Twilio’s API.
First, here the things that you need:
- Node and npm installed
- Create an account with Twilio (it’s free)
- And finally, Twilio and dotenv library
Once you sign up for the Twilio account, activate the Sandbox for Whatsapp. This enable you a shared phone number and allows you to test with WhatsApp service.
Then you have to opt in sending a message to the phone number provided from the sandbox. The message should say “join mass-there”, if everything is ok you will receive a confirmation response.
Now let’s start with Node.js
Once you are in the directory where is created the project, in the terminal run the following commands:
npm init -y
npm install twilio@3.30.0 dotenv
The first one to iniciate a package.json and the second one for install the dependencies.
The next step is create the file index.js with the following code:
const { config } = require('./config');
const accountSid = config.sid;
const authToken = config.token;
const client = require('twilio') (accountSid, authToken);
client.messages.create({
from: 'whatsapp:+14155238886',
body: 'Hello world this is CarlosVldz!!!',
to: 'whatsapp:+5215555555555'
}).then(message => console.log(message.sid));
(Don’t forget replace the phone numbers in this example with your sandbox number and a personal number.)
Finally I used dotenv to configure the environment variables TWILIO_ACCOUNT_SID and TWILIO_AUTH_TOKEN with their values from the account credentials. You can find both in your Twilio console.
.env.example
TWILIO_ACCOUNT_SID = "Your account sid"
TWILIO_AUTH_TOKEN = "Your auth token"
In your terminal run this last command to send the WhatsApp message:
node index.js
In your phone check WhatsApp and you should have a new chat like this.
Hope you liked! (: