Exotel Endpoint Coverage Matrix
This matrix maps Exotel WhatsApp APIs to the project routes and implementation references.
Unofficial community project. Not affiliated with or endorsed by Exotel.
Messaging API
Reference: developer.exotel.com/api/whatsapp
| Exotel Operation | Project Route | Implementation | Status |
|---|---|---|---|
POST /v2/accounts/{sid}/messages (single + bulk) |
POST /api/v1/messages |
apps/api/src/routes/messages.ts, apps/api/src/services/exotel.ts |
Covered |
| Delivery callbacks / status webhooks | POST /api/v1/webhooks/exotel |
apps/api/src/routes/webhooks.ts |
Covered |
| Message status retrieval (local persisted state) | GET /api/v1/messages/:id |
apps/api/src/routes/messages.ts |
Covered |
Template Management API
Reference: developer.exotel.com/api/whatsapp-template-management-apis
| Exotel Operation | Project Route | Implementation | Status |
|---|---|---|---|
GET /v2/accounts/{sid}/templates with filters |
GET /api/v1/templates?remote=true |
apps/api/src/routes/templates.ts, apps/api/src/services/exotel.ts |
Covered |
POST /v2/accounts/{sid}/templates |
POST /api/v1/templates |
apps/api/src/routes/templates.ts |
Covered |
PUT /v2/accounts/{sid}/templates?waba_id=... |
PUT /api/v1/templates/:id |
apps/api/src/routes/templates.ts |
Covered |
DELETE /v2/accounts/{sid}/templates?waba_id=... |
DELETE /api/v1/templates |
apps/api/src/routes/templates.ts |
Covered |
POST /v2/accounts/{sid}/templates/sample |
POST /api/v1/templates/upload-sample |
apps/api/src/routes/templates.ts |
Covered |
Onboarding API
Reference: developer.exotel.com/api/whatsapp-onboarding-apis
| Exotel Operation | Project Route | Implementation | Status |
|---|---|---|---|
POST /v2/accounts/{sid}/isv (link generation) |
POST /api/v1/onboarding-links |
apps/api/src/routes/onboarding.ts |
Covered |
GET /v2/accounts/{sid}/isv?access_token=... |
GET /api/v1/onboarding-links/validate |
apps/api/src/routes/onboarding.ts |
Covered |
Notes
Coverage is exposed through project-level routes that wrap Exotel operations and add auth, tenant scoping, persistence, and queue orchestration.
Validation guardrails include E.164 phone format, canonical whatsapp.messages[] payload checks, bulk cap of 100 messages, onboarding generation cap of 50 links, and required waba_id for Exotel template operations.
For full request/response shapes, review apps/api/openapi.yml and Exotel docs.