DEV Community

Cover image for Build a WhatsApp Bot with Python in 10 Minutes (Free Forever)
Omdaa API
Omdaa API

Posted on Edited on Originally published at omdaa.com

Build a WhatsApp Bot with Python in 10 Minutes (Free Forever)

Build a WhatsApp Bot with Python in 10 Minutes (Free Forever)

Python + WhatsApp is a classic stack for support bots, alerts, and AI agents. This guide uses the official Omdaa Python SDK — free forever, no Meta Cloud API verification required to start.

Series: Free Forever WhatsApp Dev · SDK: omdaa-sdk / Python

Prerequisites

  • Python 3.10+
  • Free Omdaa account → register
  • WhatsApp session linked (Dashboard QR or Cursor MCP)

Install

pip install omdaa
export OMDAA_API_KEY=your-api-key
Enter fullscreen mode Exit fullscreen mode

Send your first message

import os
from omdaa import OmdaaClient

client = OmdaaClient(api_key=os.environ["OMDAA_API_KEY"])

res = client.messages.send_text(
    session_id="default",
    to="201234567890",  # country code, no +
    message="Hello from Python + Omdaa!",
)
print(res)
Enter fullscreen mode Exit fullscreen mode

Receive messages via webhook (Flask)

from flask import Flask, request

app = Flask(__name__)

@app.post("/webhook")
def webhook():
    payload = request.get_json(force=True) or {}
    event = payload.get("event", "")
    data = payload.get("data") or {}

    if "message" in event:
        sender = data.get("from")
        text = data.get("text") or ""
        print(f"From {sender}: {text}")
        # Optional: reply with client.messages.send_text(...)

    return ("", 200)

if __name__ == "__main__":
    app.run(port=8080)
Enter fullscreen mode Exit fullscreen mode

Point Omdaa to your public URL:

client.webhooks.set({
    "url": "https://your-tunnel.example/webhook",
    "enabled": True,
    "events": ["message.received"],
})
client.webhooks.test()
Enter fullscreen mode Exit fullscreen mode

Use ngrok / Cloudflare Tunnel while developing.

Add Omdaa AI (no OpenAI key required)

  1. Open Dashboard → Omdaa AI
  2. Bind bot to your session
  3. Enable Use Omdaa AI
  4. Set a short system prompt

Unlimited AI replies are included in Free Forever.

Async / automation ideas

Idea How
Cron alerts send_text from a scheduled job
FastAPI receiver Same webhook pattern
n8n Skip Flask — use n8n guide
Cursor agents Omdaa MCP

Node twin

Same API from JavaScript:

npm install @omdaafreeapi/omdaa-api-client
Enter fullscreen mode Exit fullscreen mode

Resources

Omdaa API — Free Forever. Ship a Python WhatsApp bot before your coffee cools.

Top comments (0)