Book a demo

Voice API for service businesses

Add AI receptionist to your app in one API call

Provision numbers, receive call intents and transcripts via webhooks. Built for plumbers, contractors, clinics. 100 free calls/month. Canadian-built, PIPEDA compliant.

First webhook in 5 minutes · Canadian-built

Provision in one call

POST to provision a number. We handle routing and AI answering.

Webhooks for intents

Receive call summary, urgency, transcript. Integrate with CRM, Zapier, n8n.

100 free calls/mo

Canadian-built. PIPEDA compliant.

Client webhooks

Sowa Answers subscribers can configure a webhook URL in their dashboard (or via Admin). When a call is answered and analyzed, we send a POST request to your URL with the event payload.

Event: call.completed

Sent when the AI receptionist has finished a call and post-call analysis is complete.

Payload (JSON)

{
  "event": "call.completed",
  "id": "call_xxx",
  "phone_number": "+1234567890",
  "timestamp": "2026-03-01T12:00:00.000Z",
  "duration_seconds": 45,
  "intent": {
    "summary": "Customer needs same-day plumbing repair",
    "urgency": "high",
    "requested_action": "schedule_visit",
    "extracted_data": {}
  },
  "transcript": "Full transcript..."
}

Fields

  • event — Always call.completed
  • id — Unique call identifier
  • phone_number— Caller's phone (E.164)
  • timestamp — ISO 8601
  • duration_seconds — Call length
  • intent — summary, urgency, requested_action, extracted_data
  • transcript — Full transcript

We include X-Sowa-Signature (HMAC-SHA256) for verification.

Requirements

  • Webhook URL must use HTTPS
  • Your endpoint should respond with 200 within 10 seconds
  • Configure in Dashboard → Systems (contact support if you need Admin access)

Sowa Flow — Invoice API

Generate professional PDF invoices with one API call. Auth: Bearer API key (lsk_...) or session cookie. Free tier: 10 invoices/month. Paid: 100/month.

Endpoint: POST /api/flow/invoices

Request body (JSON)

{
  "from": { "name": "Your Business", "address": "...", "email": "..." },
  "to": { "name": "Client Name", "address": "...", "email": "..." },
  "items": [{ "description": "Service", "quantity": 1, "rate": 150 }],
  "currency": "CAD",
  "dueDate": "2026-04-01",
  "invoiceNumber": "INV-001"
}

Response

200 — PDF binary. 400 validation error. 401 unauthorized. 429 usage limit exceeded.

Sowa Flow · Dashboard Invoice Builder

Use cases

  • Create a CRM lead when a call is handled
  • Log calls to your internal system
  • Trigger Zapier/Make/n8n workflows
  • Sync with your calendar or booking tool