Coplace API · v1
Your software talks to your customers on WhatsApp.
Send and receive messages, manage contacts and templates, follow every delivery by webhook — and choose who answers: the collaborator or your code.
curl https://coplace.io/api/v1/inbox/conversations \ -H "Authorization: Bearer $COPLACE_KEY" \ -H "Content-Type: application/json" \ -d '{ "channelId": "9f4c…", "to": "+33612345678", "templateName": "order_ready", "templateLanguage": "fr", "variables": { "1": "Karim" }, "idempotencyKey": "order-1042" }'200 OK
{ "data": { "conversationId": "c81d…", "duplicate": false, "message": { "id": "5b2e…", "type": "template", "status": "sent", "textContent": "Bonjour Karim, votre commande est prête." } }}- Base URL
https://coplace.io/api/v1- Authentication
Bearer cop_…- Responses
{ data } · { error }- Limit per key
600 / min
Where to start
The reference
All 51 endpointsAPI keys1
- GETList recent API calls
Channels1
- GETList the channels of the workspace
Contacts9
- GETList contacts
- POSTCreate a contact
- GETGet one contact
- PATCHUpdate a contact
Conversations22
- GETList the labels of the inbox
- GETList conversations
- POSTWrite first to someone who has not written yet
- GETGet one conversation
Messages2
- GETGet the layout of a received email
- GETDownload the file attached to a message
Status2
- GETIs everything working
- GETWhat has been consumed
Templates6
- GETList message templates
- POSTDraft a template
- GETGet one template
- PATCHEdit a draft template
Webhooks8
- GETList your webhook subscriptions
- POSTSubscribe to events
- DELUnsubscribe
- PATCHChange a subscription
What makes a first try fail
window_closedThe 24-hour windowOutside it, only an approved template goes out. The API refuses before WhatsApp does.idempotencyKeyOne idempotency key per sendRequired: two calls with the same key send once.error.codeTest the code, not the textEvery refusal carries a stable code and a request id.X-Coplace-SignatureVerify every webhookHMAC-SHA256 over the raw body; two signatures while a secret rotates.For your tools and your agents
The OpenAPI 3.1 description generates an SDK in one command; llms.txt hands the whole API to an agent. Both are drawn from the code, never written by hand.