Skip to main content

Prerequisites

(Click for details)
  1. Create Meta Developer Account
  1. Set Up WhatsApp Business API You can get your WhatsApp Business Account ID from Business Settings
  WHATSAPP_ACCESS_TOKEN=your_access_token          # Access Token
  WHATSAPP_PHONE_NUMBER_ID=your_phone_number_id    # Phone Number ID
  WHATSAPP_RECIPIENT_WAID=your_recipient_waid      # Recipient WhatsApp ID (e.g. 1234567890)
  WHATSAPP_VERSION=your_whatsapp_version           # WhatsApp API Version (e.g. v22.0)
Note that for first-time outreach, you must use pre-approved message templates here
  • Test messages can only be sent to numbers that are registered in your test environment
"""

The example below shows how to send a template message using Agno's WhatsApp tools.
For more complex use cases, check out the WhatsApp Cloud API documentation:
[here](https://developers.facebook.com/docs/whatsapp/cloud-api/overview)
"""

from agno.agent import Agent
from agno.models.google import Gemini
from agno.tools.whatsapp import WhatsAppTools

# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------


agent = Agent(
    name="whatsapp",
    model=Gemini(id="gemini-3-flash-preview"),
    tools=[WhatsAppTools()],
)

# Example: Send a template message
# Note: Replace 'hello_world' with your actual template name

# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
    agent.print_response(
        "Send a template message using the 'hello_world' template in English to +1 123456789"
    )

Run the Example

# Clone and setup repo
git clone https://github.com/agno-agi/agno.git
cd agno/cookbook/91_tools

# Create and activate virtual environment
./scripts/demo_setup.sh
source .venvs/demo/bin/activate

python whatsapp_tools.py
For details, see WhatsApp cookbook.