Workspace · Reference
API reference
Every endpoint the front end calls, grouped by domain and mapped to the screen that uses it. 124 routes in all, taken from the deployed bundle on 24 Aug 2026.
124 endpoints
Paths are relative to the app origin and every one of them is authenticated through Clerk.
Methods are the ones the client actually issues — the server may accept more. Parameterised
segments are shown as
:id. This page documents the client’s view of the API;
request and response shapes live in the server project, which is not part of the capture.
Dashboard & pipeline
Everything the pipeline workspace reads on load.
| Endpoint | Methods | What it backs | Screen |
|---|---|---|---|
| /api/dashboard/summary | GET | Stage counts and the metric tiles | Dashboard |
| /api/pipeline/prospecting | GET | Prospecting grid rows | Dashboard |
| /api/pipeline/active | GET | Onboarding & active roster | Dashboard |
| /api/pipeline/inactive | GET | Inactive reps tab | Dashboard |
| /api/pipeline/needs-attention | GET | Not producing (active) tab | Dashboard |
| /api/pipeline/packets | GET | Packet counters | Dashboard |
| /api/pipeline/packet-queue | GET | Needs BambooHR Action queue | Dashboard |
| /api/pipeline/packet-reps | GET | Reps behind each queued packet | Dashboard |
| /api/deals/summary | GET | Month-to-date deal total | Dashboard |
| /api/deals/goal-progress | GET | Goal tile and pace | Dashboard |
| /api/activity-events | GET | Freshness stamps on each tile | Dashboard |
Reps
The rep record and everything hanging off it.
| Endpoint | Methods | What it backs | Screen |
|---|---|---|---|
| /api/reps | GET POST | List and create reps | Dashboard |
| /api/reps/search | GET | Backs the Find a rep palette | Command palette |
| /api/reps/bulk | POST | Bulk edit selected rows | Dashboard |
| /api/reps/bulk-stage | POST | Move several reps a stage at once | Dashboard |
| /api/reps/:id | GET PATCH | One rep record | Rep profile |
| /api/reps/:id/status | PATCH | Mark active or inactive | Rep profile |
| /api/reps/:id/transition | POST | Change pipeline stage | Rep profile |
| /api/reps/:id/deals | GET POST | Production log entries | Rep profile |
| /api/reps/:id/deals/void | POST | Void a logged deal | Rep profile |
| /api/reps/:id/notes | GET POST | Append-only notes | Rep profile |
| /api/reps/:id/onboarding | GET PATCH | The twelve checklist steps | Rep profile |
| /api/reps/:id/outreach | GET | Tracked email log | Rep profile |
| /api/reps/:id/packet-flag | PATCH | Still ramping / washed out | Dashboard |
| /api/reps/:id/production | GET | Period goal and attainment | Rep profile |
| /api/reps/:id/recordings | GET | Calls matching the rep’s number | Rep profile |
Daily checklist
The manager’s operating checklist and its review chain.
| Endpoint | Methods | What it backs | Screen |
|---|---|---|---|
| /api/checklist | GET POST | Today’s checklist | Daily Checklist |
| /api/checklist/items/:id | PATCH | Tick or count one item | Daily Checklist |
| /api/checklist/:id/attestations/bulk | POST | Attest several items at once | Daily Checklist |
| /api/checklist/:id/eod | PUT | Save the end-of-day draft | Daily Checklist |
| /api/checklist/:id/submit | POST | Submit for review | Daily Checklist |
| /api/checklist/:id/review | POST | General Manager review | Oversight |
| /api/checklist/:id/followups | GET POST | Follow-ups raised today | Daily Checklist |
| /api/checklist/followups | GET | Open follow-ups across days | Daily Checklist |
| /api/checklist/followups/:id | PATCH | Close a follow-up | Daily Checklist |
| /api/checklist/oversight | GET | Roll-up across a manager’s reports | Oversight |
| /api/checklist/reviews/bulk | POST | Review several checklists | Oversight |
| /api/checklist/admin/config | GET PUT | Scoring and thresholds | Checklist admin |
| /api/checklist/admin/template | GET PUT | The item template itself | Checklist admin |
| /api/me/checklist-layout | GET PUT | Your Edit layout ordering | Daily Checklist |
Recruiting & transfers
Candidate hand-offs from the recruiting floor.
| Endpoint | Methods | What it backs | Screen |
|---|---|---|---|
| /api/recruiting/candidates | GET | Candidate records | Transfers |
| /api/recruiting/candidates/:id | GET PATCH | One candidate | Transfers |
| /api/recruiting/candidates/:id/resume | GET | Resume download | Transfers |
| /api/recruiting/candidates/:id/recordings | GET | Recruiting call audio | Transfers |
| /api/recruiting/candidates/:id/manager-notes | GET POST | Your notes on a candidate | Transfers |
| /api/recruiting/candidates/:id/qa-notes | GET POST | QA notes | Transfers |
| /api/recruiting/candidates/:id/follow-up-notes | GET POST | The follow-up feed | Transfers |
| /api/recruiting/candidates/:id/called-back | POST | Mark called back | Transfers |
| /api/recruiting/candidates/:id/transfer | POST | Create a transfer | Transfers |
| /api/recruiting/candidates/:id/transfer/withdraw | POST | Withdraw one | Transfers |
| /api/recruiting/transfers/open | GET | Outstanding queue | Transfers |
| /api/recruiting/transfers/closed | GET | Accepted and declined | Transfers |
| /api/recruiting/transfers/dashboard | GET | Weekly activity table | Transfers |
| /api/recruiting/transfers/follow-ups | GET | Follow-ups tab | Transfers |
| /api/recruiting/transfers/:id/accept | POST | Accept — records the call only | Transfers |
| /api/recruiting/transfers/:id/decline | POST | Decline with feedback | Transfers |
| /api/recruiting/transfers/:id/later | POST | Park for later | Transfers |
| /api/recruiting/transfers/:id/convert | POST | Add to Prospecting | Transfers |
| /api/recruiting/transfers/:id/convert/undo | POST | Undo the promotion | Transfers |
| /api/recruiting/activities | GET | Recruiting activity log | Transfers |
| /api/recruiting/activities/today | GET | Today only | Transfers |
| /api/recruiting/activities/latest | GET | Most recent event | Transfers |
| /api/recruiting/stats | GET | Counters behind the tabs | Transfers |
| /api/recruiting/tally | GET | Per-manager tally | Transfers |
| /api/recruiting/managers | GET | Managers receiving transfers | Transfers |
| /api/recruiting/manager-order | GET PUT | Round-robin order | Admin |
| /api/recruiting/recruiter-order | GET PUT | Recruiter rotation | Admin |
| /api/recruiting/recruiter-division | GET PUT | Recruiter to division map | Admin |
| /api/recruiting/auto-off | GET PUT | Turn off transfers automatically | Transfers |
| /api/recruiting/time-off | GET POST | Team time off | Transfers |
| /api/recruiting/time-off/mine | GET | Your own time off | Transfers |
| /api/recruiting/missed-calls | GET | Missed transfer calls | Transfers |
| /api/recruiting/missed-calls/:id/note | POST | Note on a missed call | Transfers |
| /api/recruiting/reports/missed-calls | GET | Missed-calls report | Transfers |
| /api/recruiting/resume-upload-url | POST | Presigned resume upload | Transfers |
| /api/recruiting/recent-transfers | GET | Recent hand-offs | Dashboard |
Calls
RingCentral activity and recordings.
| Endpoint | Methods | What it backs | Screen |
|---|---|---|---|
| /api/calls/activity | GET | Inbound and outbound counts | Dashboard |
| /api/calls/recordings | GET | Recording list | Rep profile |
| /api/calls/recordings/:id/audio | GET | Downloadable audio | Rep profile |
Me, settings & org
Per-user preferences and shared reference data.
| Endpoint | Methods | What it backs | Screen |
|---|---|---|---|
| /api/me | GET | The signed-in user | Shell |
| /api/me/settings | GET PUT | Personal preferences | My Settings |
| /api/me/deal-goals | GET PUT | Monthly personal and team goals | My Settings |
| /api/me/transitions/:id | PATCH | Your private State labels | My Settings |
| /api/me/views/:id | PATCH | Saved column layouts | Dashboard |
| /api/settings | GET | Shared app settings | Shell |
| /api/signatures | GET POST | Email signatures | My Settings |
| /api/org | GET | Group and team hierarchy | Organization |
| /api/managers | GET | Manager directory | Organization |
| /api/notifications | GET | Unread notifications | Shell |
| /api/notifications/read | POST | Mark read | Shell |
| /api/notifications/dismiss | POST | Dismiss one | Shell |
| /api/feedback | POST | The Feedback widget | Shell |
| /api/email-templates | GET POST | Your compose templates | My Settings |
| /api/email-templates/attachment-upload-url | POST | Presigned attachment upload | My Settings |
| /api/outreach/config | GET | Tracked-outreach status | Admin |
| /api/prospects/email-check | POST | Duplicate email guard | Dashboard |
| /api/prospects/phone-check | POST | Duplicate phone guard | Dashboard |
| /api/rankings/board | GET | The sales-floor leaderboard | Rankings |
| /api/healthz | GET | Liveness probe | — |
| /api/__clerk | GET | Clerk authentication | — |
Admin
Organization management, integrations and data repair.
| Endpoint | Methods | What it backs | Screen |
|---|---|---|---|
| /api/admin/users | GET POST | Directory | Admin |
| /api/admin/users/:id | PATCH DELETE | One user | Admin |
| /api/admin/users/:id/bamboo-retry | POST | Retry a BambooHR link | Admin |
| /api/admin/invites | GET POST | Invitations | Admin |
| /api/admin/settings | GET PUT | Org-wide settings | Admin |
| /api/admin/teams/:id/deactivate | POST | Deactivate a team | Admin |
| /api/admin/bamboo/sync | POST | Roster sync | Admin |
| /api/admin/bamboo/write-probe | POST | Check write access | Admin |
| /api/admin/ringcentral/sync | POST | Pull call counts | Admin |
| /api/admin/packets/sync | POST | Scan signed packets | Admin |
| /api/admin/duplicates | GET | Duplicate detection | Admin |
| /api/admin/duplicates/merge | POST | Merge duplicates | Admin |
| /api/admin/duplicates/dismiss | POST | Dismiss a match | Admin |
| /api/admin/orphans | GET | Orphaned records | Admin |
| /api/admin/db/constraint-health | GET | Constraint health | Admin |
| /api/admin/db/constraint-repair | POST | Repair constraints | Admin |
| /api/admin/retreads | GET | Former reps | Admin |
| /api/admin/retreads/:id | DELETE | Remove a retread | Admin |
| /api/admin/retreads/import | POST | Import from BambooHR history | Admin |
| /api/admin/email-templates | GET POST | Default templates | Admin |
| /api/admin/email-templates/:id | PATCH DELETE | One default template | Admin |
| /api/admin/outreach/status | GET | Outreach configuration state | Admin |
| /api/admin/outreach/verify | POST | Send a test email | Admin |
| /api/admin/demo-data | DELETE | Clear demo data | Admin |
Integrations behind these routes
What the server talks to on the other side
BambooHR
Roster sync, write probe, per-user retry, packet scanning and the retread import.
RingCentral
Inbound and outbound call counts, plus recordings with downloadable audio.
Clerk
Authentication, mounted at /api/__clerk.
Object storage
Presigned uploads for candidate resumes and email-template attachments.
Constant Contact, WPI University and Kloser appear as onboarding checklist steps rather than as
API integrations.