Build a WhatsApp Bot in 5 Minutes with Omdaa API
November 3, 20263 min read691 views
Admin

WhatsApp is where your customers already are. In this tutorial you will send your first message, set up webhooks, and enable AI replies using Omdaa API — a developer-friendly WhatsApp Business platform that is free forever.
Series: Free Forever WhatsApp Dev · Full version on omdaa.com blog
Why Omdaa?
- Free Forever — unlimited sessions & messages, no credit card
- Official SDKs: Node.js (
@omdaafreeapi/omdaa-api-client), Python, PHP, Go, Laravel — omdaa-sdk
- Instant Webhooks with retries + circuit breaker
- Omdaa AI auto-replies built-in
- n8n, Zapier, and Cursor MCP (109 tools, v2.3)
Step 1: Create an account
Sign up free at omdaa.com/register — everything stays free, no subscription.Step 2: Install the SDK
``bash
npm install @omdaafreeapi/omdaa-api-client
`
Python / PHP:
`bash
pip install omdaa
composer require omdaapi/omdaa-php
`
Step 3: Get your API key
From the dashboard: API Keys → Create key. Copy it to your environment:
`bash
export OMDAA_API_KEY=your-api-key-here
`
Step 4: Connect a WhatsApp session
Open Dashboard → Sessions, create a session, and scan the QR code with WhatsApp on your phone. Note the sessionId (e.g. default).
Or from Cursor MCP: create_session → get_qr.
Step 5: Send your first message
`javascript
const { OmdaaClient } = require('@omdaafreeapi/omdaa-api-client');
const client = new OmdaaClient({
apiKey: process.env.OMDAA_API_KEY,
});
async function main() {
const res = await client.messages.sendText({
sessionId: 'default',
to: '201234567890', // country code + number, no +
message: 'Hello from Omdaa API!',
});
console.log('Sent:', res.data?.messageId);
}
main().catch(console.error);
`
TypeScript / ESM:
`typescript
import { OmdaaClient } from '@omdaafreeapi/omdaa-api-client';
const client = new OmdaaClient({ apiKey: process.env.OMDAA_API_KEY! });
await client.messages.sendText({
sessionId: 'default',
to: '201234567890',
message: 'Hello from Omdaa API!',
});
`
Step 6: Set up a webhook
`javascript
await client.webhooks.set({
url: 'https://yoursite.com/api/whatsapp-webhook',
enabled: true,
events: ['message', 'message.received', 'session'],
});
const test = await client.webhooks.test();
console.log('Webhook test:', test);
`
Your endpoint receives JSON for inbound messages, delivery status, and session events — build bot logic there, pipe to n8n, or enable Omdaa AI for automatic replies without an external LLM key.
Step 7 (optional): Omdaa AI bot
Go to Dashboard → Omdaa AI, pick your session, create a bot, and enable Use Omdaa AI. Unlimited AI replies are included in Free Forever.
Prefer agents? Cursor MCP
1. Cursor Directory → omdaa-api → Add to Cursor
2. Set OMDAA_API_KEY
3. Use send_text_message, set_webhook, upsert_openai_bot`