API
There's no public API yet — but there are several ways to connect Enscale to your other systems today.
Do you need this page?
Only if you or your developer want to connect Enscale to another system. Nothing here is needed to run your store day to day.
The short version: there's no public API yet. But several integrations are possible today without one — and one of them covers more ground than most people expect.
What exists today
Enscale's backend powers the Shopify app, the team inbox, and the storefront widgets. Those clients authenticate as your workspace and are scoped to your store's data.
There is currently no self-serve API key or public endpoint set.
Authentication model
| Model | Used by |
|---|---|
| Workspace token | Merchant and staff clients — the Shopify app and the team inbox. |
| Signed service calls | Trusted internal calls between Enscale services. |
Every request that touches merchant data is scoped to a single workspace and verified server-side. A client cannot read another store's data by asking for it — ownership is checked on the backend, never assumed from the request.
Webhooks
| Source | Handled by | Notes |
|---|---|---|
| Shopify | Enscale | Automation triggers, restocks, ad attribution, GDPR. See Webhook reference. |
| Meta | Enscale | Inbound messages, comments, delivery receipts, template status. |
Both are registered automatically. You don't configure endpoints.
Errors you may see surfaced in the UI
When something fails, Enscale reports a category rather than a raw provider error:
| Category | Meaning |
|---|---|
| Authentication failed | The session or connection is no longer valid. |
| Permission denied | The action isn't allowed for this role or plan. |
| Validation failed | The request was malformed — usually a bad phone number or missing field. |
| Plan limit exceeded | The allowance for that metric is exhausted. |
| Consent required | The contact hasn't opted in. |
| Channel unavailable | The channel is disconnected or in an error state. |
| Provider error | Meta or Shopify returned an error. |
Provider errors are surfaced rather than swallowed, so a failed send shows a reason instead of disappearing.
Planned public API
A public API is planned to cover:
- Contacts — create, update, look up.
- Conversations and messages — read, and send where consent allows.
- Workflows — trigger a flow from an external event.
- Broadcasts — create and schedule campaigns.
- Reviews — submit and read.
- Outbound webhooks — notify your systems when things happen in Enscale.
It will use stable authentication, per-workspace scoping, documented rate limits, and auditable access.
If you need to integrate now
Four things work today without any API:
- Start an automation from your own system. The Tag Added trigger turns any tagging action into an automation hook.
- Create contacts — CSV import, storefront popup, or any connected channel.
- Generate payment links from an automation, via the Razorpay integration.
- Integrate through Shopify. Anything that writes to Shopify orders, customers or inventory reaches Enscale through the events it already listens to.
That last one covers more than you'd think
If your system can tag a Shopify customer, it can start an Enscale automation.
Your ERP, your 3PL, a Zapier or Make scenario, a warehouse tool — anything that can write a tag to a Shopify customer or order can trigger a WhatsApp message through Enscale. No API needed on either side.
Next steps
- Webhook reference — the Shopify events Enscale listens to.
- Integrations — what connects today.
- What can start an automation — including Tag Added.