Teamwork Tickets (Desk) Integration
Support tickets come from Teamwork Desk — a different Teamwork product from Teamwork Projects (build/delivery; see
teamwork-projects.md). This covers how ticket data reaches the dashboard and the endpoints that read it. Verified 2026-05-20.
Data flow
Section titled “Data flow”Teamwork Desk (support inboxes) │ n8n "Teamwork Ticket Sync + Roam Lookup" (hquEYfG9XMMTJLYX) ▼fcr_operations.teamwork_open_tickets ← OPEN tickets only (filtered at sync time) ▲ (+ _staging, _old) │ reads Worker: dashboard-tickets · dashboard-check-tickets │ └── for OPEN+CLOSED history → Worker hits Teamwork Desk LIVE (dashboard-teamwork-desk-tickets)The BQ table is open-only (closed tickets are filtered out at n8n sync time). For full history you must go live to the Desk API.
Endpoints
Section titled “Endpoints”| Route | Source | Use |
|---|---|---|
dashboard-tickets | BQ teamwork_open_tickets | open tickets for a subscriber |
dashboard-check-tickets | BQ | flexible open-ticket search — subscriberId, assignedTo, inbox (combinable) + summary |
dashboard-teamwork-desk-tickets | live Teamwork Desk API | full open + closed history; ?status=closed supported. Resolves subscriber → CRM emails → Desk customer_id(s) → tickets, merged + deduped |
dashboard-twd-deep-dive | Teamwork Desk webhook | SPIKE (not deployed) — on the deep-dive tag in whitelisted inboxes (AIB MS 35416, Pre-Sales 35422), HMAC-verify → async deep-dive |
Skill: /tickets (open via BQ, or full history incl. closed via the live Desk API).
Key quirks (Teamwork Desk API)
Section titled “Key quirks (Teamwork Desk API)”- Auth is
Bearer, not Basic (Desk differs from Projects). - Only
customerId+filter[status]actually filter server-side — other params are ignored. subscriber_idlives incustomFields[2].dataand is not filterable — you can’t query Desk by subscriber directly; you resolve the account’s emails (Dynamics +dim_listings_with_subscriber_id) → Desk customer → tickets.- BQ
teamwork_open_ticketsis open-only; use the live endpoint for closed.
Tickets vs Projects — don’t conflate
Section titled “Tickets vs Projects — don’t conflate”| Teamwork Tickets (Desk) | Teamwork Projects | |
|---|---|---|
| What | Support / service tickets | Build & delivery projects, milestones, tasks |
| BQ | teamwork_open_tickets (open-only) | teamwork_project_tasks, teamwork_project_milestones |
| Live | dashboard-teamwork-desk-tickets (Desk API) | dashboard-teamwork-projects (Projects API, via n8n) |
| Doc | this page | teamwork-projects.md |
Ask the docsRAG over this site
Ask anything about the FCR Dashboard platform — architecture, BigQuery, the worker routes, billing rules, the LRC stack, scoring… Answers are grounded in this documentation, with source links.
How does the deal-brief refresh work? Which routes are Worker vs n8n? How is account health scored?