This guide shows how to send non-templated interactive button messages to recipients using Plivo’s APIs. You can only send a non-templated WhatsApp message as a reply to a user-initiated conversation or as part of an existing ongoing conversation that started with a templated WhatsApp message.
To get started, you need a Plivo account — sign up with your work email address if you don’t have one already. If this is your first time using Plivo APIs, follow our instructions to set up a Python development environment.
Create a file called send_whatsapp.py
and paste into it this code.
import plivo
from plivo.utils.interactive import Interactive
client = plivo.RestClient('<auth_id>','<auth_token>')
interactive=Interactive(**{
"type": "button",
"header": {
"type": "media",
"media": "https://media.geeksforgeeks.org/wp-content/uploads/20190712220639/ybearoutput-300x225.png"
},
"body": {
"text": "Make your selection"
},
"action": {
"buttons": [
{
"title": "Click here",
"id": "bt1j1k2j"
},
{
"title": "Know More",
"id": "bt1j1k2jkjk"
},
{
"title": "Request Callback",
"id": "bt1j1kfd2jkjk"
}
]
}
})
response= client.messages.create(src="+14151112221",dst="+14151112222",type_="whatsapp", interactive=interactive)
print(response)
Replace the auth placeholders with your authentication credentials from the Plivo console. Replace the phone number placeholders with your phone numbers in E.164 format (for example, +12025551234).
src
should be a phone number registered to your WhatsApp Business Account.
dst
should be the recipient’s WhatsApp number.
Save the file and run it.