Base URL
All API requests are made to the following base URL:GET /contacts maps to https://api.waply.io/v1/contacts.
What you can do with the API
The Waply API covers the core objects and workflows in the platform:Contacts
Create, retrieve, update, and delete contacts. Filter by tag, lifecycle stage, or search term.
Conversations
List and read conversations, assign them to agents or teams, resolve them, and add internal notes.
Messages
Send text, template, image, and document messages to contacts across WhatsApp and other channels.
Broadcasts
Send bulk messages to segmented audiences. Schedule broadcasts or send them immediately.
Webhooks
Register HTTPS endpoints to receive real-time events for messages, conversations, contacts, and broadcasts.
Authentication
Authenticate every request with a Bearer token from your Waply API keys.
Request format
Send all request bodies as JSON and include theContent-Type: application/json header on requests that have a body.
Response format
All responses are JSON. Successful responses return an HTTP2xx status code. Collection endpoints return a data array along with pagination metadata.
Error format
When a request fails, Waply returns a non-2xx status code and a JSON body with an error object:
Common error codes
| HTTP status | Meaning |
|---|---|
401 | Invalid or missing API key. Check your Authorization header. |
403 | Your plan does not include API access. Upgrade to Growth or Enterprise. |
404 | The requested resource does not exist. |
422 | Validation error. Check the message field for details. |
429 | Rate limit exceeded. Slow down your requests. |
Rate limits
Rate limits are enforced per API key on a rolling 60-second window.| Plan | Requests per minute |
|---|---|
| Growth | 100 |
| Enterprise | 500 |
429 status. The response includes a Retry-After header indicating how many seconds to wait before retrying.