QualityOS Docs
Docs/Integrations/Zapier

Zapier Integration

Send calls and tickets from Zendesk, Intercom, Aircall, or any platform to QualityOS automatically. Every interaction gets scored and saved to History.

Step 1 — Generate an API key

  1. 1Go to Settings → API Keys in your dashboard.
  2. 2Click Generate New Key. Name it (e.g. "Zapier Production").
  3. 3Copy the key immediately — it starts with qos_live_ and is only shown once.

Step 2 — Create a Zap

  1. 1In Zapier, click Create Zap.
  2. 2Choose your helpdesk as the Trigger — e.g. Zendesk "Ticket Closed", Intercom "Conversation Closed", Aircall "Call Ended".
  3. 3Add an Action: Webhooks by Zapier → POST.

Step 3 — Configure the webhook

URL:          https://www.getqualityos.com/api/webhook/zapier
Payload Type: JSON
Headers:      Authorization: Bearer qos_live_YOUR_KEY_HERE
              Content-Type: application/json

ℹ️ Visiting this URL in a browser shows a 405 error — this is normal. The endpoint only accepts POST requests.

Step 4 — Map the payload fields

For Call QA:

{
  "type":             "call",
  "agent_name":       "{{Agent Name}}",
  "content":          "{{Call Transcript}}",
  "date":             "{{Started At}}",
  "call_direction":   "inbound",
  "team_queue":       "{{Queue Name}}"
}

For Ticket QA (Team plan):

{
  "type":             "ticket",
  "agent_name":       "{{Assignee Name}}",
  "content":          "{{Ticket Body / Latest Comment}}",
  "ticket_id":        "{{Ticket ID}}",
  "ticket_subject":   "{{Subject}}",
  "team_queue":       "{{Group Name}}",
  "date":             "{{Created At}}",
  "csat_score":       "{{CSAT Score}}"
}

Full field reference

FieldTypeDescriptionRequired
typestringcall | ticket | chat
agent_namestringAgent's full name
contentstringFull transcript or ticket body
datestringISO date YYYY-MM-DD, defaults to today
ticket_idstringExternal ticket ID for deduplication
ticket_subjectstringTicket subject line
team_queuestringTeam or queue name for filtering
call_directionstringinbound | outbound
csat_scorenumber1–5 customer satisfaction score
presetstringstandard_support | billing_payroll | technical_support | onboarding

Response format

{
  "success":      true,
  "scorecard_id": "TKT-20260416-001",
  "verdict":      "COACH",
  "score":        74.5
}

Use verdict in Zapier to trigger conditional paths — e.g. create a follow-up task only when verdict = FLAG.

Native Slack alerts (Team plan): QualityOS can post FLAG and COACH verdicts directly to your Slack channel without extra Zapier steps. Configure your webhook URL in Settings → Slack Notifications.