Docs/Reference/API Access

API Access

Growth+

Programmatic access to your Kwiro data for custom integrations, BI tools, and headless storefronts.

Headless? Custom BI? Multi-Channel? — Use the API#

Kwiro's API gives you the same data your dashboard uses, in JSON, behind a stable key you control. Available on Growth and Scale plans.

REST APIPull conversations and revenue data into BI tools, CRMs, or Slack alerts.$ curl -H "Authorization: Bearer $KWIRO_API_KEY" \ https://api.kwiro.ai/v1/conversations?since=2026-04-01{ "data": [ { "id": "c_3f9...", "outcome": "purchased", "revenue": 54.00 } ]}
UI mockup: Standard REST. Bearer-token auth. JSON in, JSON out. Pull conversations, sales attribution, and memory programmatically.

What You Can Do#

  • Pull conversations and AI responses for custom analytics (Looker, Mixpanel, etc.)
  • Trigger sync from your own deploy pipeline
  • Embed the AI on a non-WooCommerce surface (custom checkout flow, mobile app, headless storefront)
  • Run BI on AI-attributed revenue, conversions, satisfaction
  • Webhooks for sales events, knowledge gaps, threshold crosses

Getting Your API Key#

  1. Dashboard → API.
  2. Click Generate key. The key is shown once — copy it now.
  3. Store it in your secrets manager. We don't display it again (only the last 4 characters).
  4. To rotate: click Regenerate. The old key dies immediately. You can have only one active key at a time.

Authentication#

Every request needs the Authorization header:

Authorization: Bearer kw_sk_...your_key...

Keys are scoped to your store — they can't read other stores' data.

Base URL#

https://api.kwiro.ai

Endpoints#

A starter set; the full reference is published at api.kwiro.ai/docs (coming soon).

Read your data#

MethodPathWhat
GET/v1/conversations?limit=20&before=...Paginated conversations
GET/v1/conversations/:idFull transcript
GET/v1/sales?from=...&to=...AI-attributed orders
GET/v1/productsSynced products
GET/v1/memory/storeMemory rows
GET/v1/knowledge-gapsKnowledge gaps

Trigger actions#

MethodPathWhat
POST/v1/sync/triggerForce a fresh catalog sync
POST/v1/conversations/:id/feedbackProgrammatically submit feedback

Webhooks (configure in dashboard → API)#

EventFires when
conversation.completedA conversation ended (idle 30 min)
sale.attributedAn order was AI-attributed
knowledge_gap.detectedA new gap crossed the frequency threshold
threshold.crossed80% / 100% / cap conversation threshold

Rate Limits#

By plan:

PlanRequests / minute
Growth60
Scale240

Exceeded requests get HTTP 429 with Retry-After header.

SDKs#

Not yet — we're prioritising the WooCommerce plugin first. The API is plain REST + JSON; any HTTP client works fine in the meantime.

Email Us For Custom Limits#

Some scale customers need higher rate limits or webhook batches. Email [email protected] with your use case and we'll set up a quote.

Was this page helpful?
Updated April 2026

Related reading