Skip to content

API overview

Base URL (local): http://localhost:8787

MethodPathNotes
GET/healthLiveness
POST/api/auth/otp/requestEmail OTP
POST/api/auth/otp/verifySession cookie
GET/api/auth/meCurrent user
GET/api/clientsTenant clients
GET/api/calendarMaster calendar
POST/api/calendar/refreshRebuild from country pack
GET/api/templatesEmail templates A–G (staff)
POST/api/templates/sendEnqueue / send via core-notify
GET/api/templates/sendsRecent template sends
GET/api/doc-draftsDocument drafts (staff)
POST/api/doc-draftsCompose draft from template A–G
GET/api/doc-drafts/:idDraft detail + placeholder readiness
PATCH/api/doc-drafts/:idEdit draft / mark ready / discard
POST/api/doc-drafts/:id/sendSend ready draft via core-notify
GET/api/doc-drafts/sendsRecent document draft sends
GET/api/cs-casesCS cases (staff)
POST/api/cs-casesLog inbound communication + initial memo
GET/api/cs-cases/:idCS case detail + memos
PATCH/api/cs-cases/:idUpdate status / priority / assignee
POST/api/cs-cases/:id/memosAppend case memo
POST/api/cs-cases/:id/notifyNotify assignee or escalate CS case
GET/api/cs-cases/notifiesRecent CS case notifications
POST/api/reports/weekly-digest/sendEmail weekly progress digest (firm admin)
GET/api/reports/weekly-digest/sendsRecent weekly digest sends
GET/api/corppass/registrationsCorppass registry (staff)
POST/api/corppass/registrationsRegister holder
PATCH/api/corppass/registrations/:idUpdate / revoke
POST/api/corppass/scanManual expiry scan
GET/api/corppass/lifecycleCorppass lifecycle cases (staff)
POST/api/corppass/lifecycleOpen lifecycle case for registration
GET/api/corppass/lifecycle/:idLifecycle case detail + readiness
PATCH/api/corppass/lifecycle/:idComplete checklist step / cancel
GET/api/gst/requestsGST document request history (staff)
POST/api/gst/scanManual GST template A auto-send scan
GET/api/gst/worksheetsF5 worksheet list by year (staff)
GET/api/gst/worksheets/:calendarEventIdF5 box mapping + doc coverage
PATCH/api/gst/worksheets/:calendarEventIdSave F5 working amounts / status
GET/api/gst/filingsF5 IRAS filing queue by year (staff)
POST/api/gst/filingsQueue ready F5 worksheet for IRAS submit (HITL)
GET/api/gst/filings/:idFiling detail + box snapshot
PATCH/api/gst/filings/:idConfirm IRAS submit / cancel / fail
GET/api/flow/rulesCase flow stages + adjacent-only policy (staff)
GET/api/coordinator/boardCoordinator Kanban (staff)
PATCH/api/coordinator/cases/:idMove / assign case (validates stage transitions)
GET/api/scheduler/dashboardProgress summary + at-risk (staff)
GET/api/scheduler/mineCurrent user assignments (staff)
GET/api/scheduler/tasksTask assignments (staff)
GET/api/scheduler/unassignedCalendar events without assignee
GET/api/scheduler/staffAssignable staff + open counts
POST/api/scheduler/autoLeast-loaded auto assign (firm admin)
POST/api/scheduler/assignManual assign one event (firm admin)
PATCH/api/scheduler/tasks/:idReassign / update status (firm admin); status only for own task (employee)
GET/api/org/chartOrg chart tree (staff)
GET/api/org/staffStaff R&R list (staff)
POST/api/org/unitsCreate org unit (firm admin)
PATCH/api/org/units/:idUpdate org unit (firm admin)
PATCH/api/org/staff/:userIdUpdate staff R&R (firm admin)
POST/api/org/bootstrapSeed default SG org units (firm admin)
POST/api/auth/access/exchangeCloudflare Access JWT → session
GET/api/auth/rbac/matrixRBAC permission matrix
GET/api/auth/rbac/meCurrent user permissions
GET/api/auth/rbac/usersTenant users (platform admin)
PATCH/api/auth/rbac/users/:id/roleUpdate user role (platform admin)
GET/api/orch/registryEngine routing table (staff)
GET/api/orch/capabilitiesQueue bindings + inline fallbacks (staff)
POST/api/orch/dispatchManual queue dispatch (platform admin)
GET/api/audit/actionsAudit action SSOT catalog (staff)
GET/api/audit/logsScoped audit history (staff; tenant/self filter)
GET/api/notify/channelsNotification channel catalog (staff)
POST/api/notify/sendMulti-channel send via core-notify (staff write)
GET/api/notify/historyRecent notifications by channel (staff)
GET/api/folders/treeClient folder tree by standard categories (session)
POST/api/documents/presignR2 upload
GET/api/aud/judgementsAudit requirement list by YA (staff)
GET/api/aud/judgements/:calendarEventIdAudit judgement detail + readiness
PATCH/api/aud/judgements/:calendarEventIdSave / confirm audit judgement
GET/api/cit/judgementsForm C / C-S judgement list by YA (staff)
GET/api/cit/judgements/:calendarEventIdCIT judgement detail
PATCH/api/cit/judgements/:calendarEventIdSave / confirm CIT judgement
GET/api/cit/doc-packsYA year-end doc pack list by YA (staff)
GET/api/cit/doc-packs/:calendarEventIdCIT doc pack detail + coverage
PATCH/api/cit/doc-packs/:calendarEventIdUpdate CIT doc pack workflow
GET/api/cit/filingsForm C / C-S IRAS filing queue by YA (staff)
POST/api/cit/filingsQueue ready Form C for manual IRAS submit (HITL)
GET/api/cit/filings/:idCIT filing detail + readiness blockers
PATCH/api/cit/filings/:idConfirm IRAS submit / cancel / fail
GET/api/pit/intakesPIT intake list by YA (staff)
GET/api/pit/intakes/:calendarEventIdPIT intake detail + IRAS form judgement
PATCH/api/pit/intakes/:calendarEventIdSave / confirm PIT intake
GET/api/pit/doc-packsPIT YA doc pack list by YA (staff)
GET/api/pit/doc-packs/:calendarEventIdPIT doc pack detail + coverage
PATCH/api/pit/doc-packs/:calendarEventIdUpdate PIT doc pack workflow
GET/api/pit/filingsPIT IRAS filing queue by YA (staff)
POST/api/pit/filingsQueue ready PIT intake for manual IRAS submit (HITL)
GET/api/pit/filings/:idPIT filing detail + readiness blockers
PATCH/api/pit/filings/:idConfirm IRAS submit / cancel / fail
GET/api/dorm/waiversDormant IRAS waiver cases by YA (staff)
POST/api/dorm/waiversOpen dormant waiver case for confirmed DORMANT Form C (HITL)
GET/api/dorm/waivers/:idDormant waiver detail + readiness blockers
PATCH/api/dorm/waivers/:idBank review, horizon plan, e-sign, or IRAS submit

MCP (PLT-MCP-01) will expose a read-only subset of these tools.