Build automated WhatsApp-first workflows, send outbound campaign broadcasts, and integrate your CRM with programmatic HTTP endpoints.
Send your first WhatsApp message via cURL in under 60 seconds.
Bearer token authorization headers and API key security practices.
Detailed schemas for messages, contacts, campaigns, and tags.
Receive real-time HTTP POST notifications on incoming WhatsApp messages.
The Chatofy Developer REST API enables programmatic access to your WhatsApp Business ecosystem. Instead of manually navigating CRM dashboards, your external servers, webhooks, or third-party platforms (like Zapier, Make, and backend microservices) can dispatch messages and manage leads.
Common API Workflows
All API requests are sent over HTTPS to the canonical production gateway. All payload bodies and responses use UTF-8 JSON encoding.
https://app.chatofy.in/api/v1Every request must provide your secret API key in the standard HTTP Authorization header using the Bearer scheme.
curl -X GET "https://app.chatofy.in/api/v1/contacts" \
-H "Authorization: Bearer cfy_sk_live_yourSecretKey" \
-H "Content-Type: application/json"Organizations can provision and revoke secret keys directly in their workspace settings. Each key inherits permissions scoped to your organization.
Generate fresh tokens with custom identifiers. When rolling credentials, revoke your existing key to provision a replacement.
Tokens are encrypted at rest with AES-256-GCM. SHA-256 hashes are used for instant constant-time lookup.
To guarantee high availability and protect WhatsApp Cloud API upstream thresholds, requests are throttled per organization token:
| Plan Tier | Requests / Minute | Burst Allowance | Status |
|---|---|---|---|
| Standard Plan | 100 req / min | 200 requests | Active |
| Professional Plan | 500 req / min | 1,000 requests | Recommended |
| Enterprise / Agency | 2,000 req / min | 5,000 requests | Dedicated |
When limits are exceeded, the API returns a 429 Too Many Requests response. Inspect the standard Retry-After response header for backoff recommendations.
Chatofy returns standard HTTP status codes with a predictable JSON envelope indicating error details:
| HTTP Code | Error Code | Description & Remediation |
|---|---|---|
| 200 / 201 | SUCCESS | Operation completed as requested. |
| 400 | BAD_REQUEST | Missing or invalid payload fields or parameters. |
| 401 | UNAUTHORIZED | Missing or invalid Bearer authentication token. |
| 403 | FORBIDDEN | Insufficient permissions or feature not allowed on your plan. |
| 429 | RATE_LIMIT_EXCEEDED | Too many requests dispatched within the minute window. |
| 500 | INTERNAL_SERVER_ERROR | Unexpected platform error. Retry with exponential backoff. |
Run this cURL snippet in your terminal to dispatch a live WhatsApp message:
curl -X POST "https://app.chatofy.in/api/v1/contact/919876543210/send-message" \
-H "Authorization: Bearer YOUR_SECRET_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": {
"body": "Hello from Chatofy API! 🚀",
"preview_url": false
}
}'Explore full request and response specifications for each resource endpoint: