API Operations
Browse API endpoints by category
Agent Authorisations
2 endpointsThe practice-wide view of which clients need HMRC agent authorisations and what is held against each. Rows are derived from the client's active or proposed services, not from authorisations already recorded, so a client who needs an authorisation nobody has requested still appears. Serves both the Making Tax Digital and the 64-8 views by taking the authorisation types the caller wants; counts are a separate call because the list is paged.
AI
4 endpointsAI-powered features for content generation and usage tracking. Includes endpoints to configure AI settings per tenant (API keys, model selection), generate content for various activities (service descriptions, proposals, tooltips), and retrieve token usage summaries for monitoring AI consumption. All content generation uses OpenRouter with configurable models.
Announcements
1 endpointThe currently active platform announcement banner. Returns the banner every user should see in-app right now (message variants for large and small screens, text and background colours, and the code used as the per-browser dismissal key), or 204 when none is active.
API Keys
4 endpointsAPI key management for programmatic access to the Sodium API. Provides endpoints to create new API keys with custom names and expiration dates, list all API keys for the authenticated user, retrieve individual API key details, update API key properties, and revoke API keys. API keys enable secure server-to-server integrations and automation workflows.
Calendar Feed
3 endpointsPer-user iCalendar (.ics) subscription feeds. Users get a secret feed URL they can subscribe to from Google Calendar, Outlook or Apple Calendar, showing their tasks on their start dates. The feed endpoint itself is anonymous — calendar clients cannot authenticate, so the token in the URL is the credential and can be reset if it leaks.
Calendar Subscriptions
7 endpointsExternal calendars subscribed to by ICS URL — the inbound mirror of Calendar Feed. Each user can hold several subscriptions (Google/Outlook/Apple secret addresses), each with a display colour and visibility toggle; their events are expanded server-side (recurrences included, times converted to practice wall clock) and overlaid on the task calendar. Feeds are fetched on demand through a 30-minute server-side cache with SSRF-guarded URLs.
Client - Agent Authorisations
9 endpointsManage HMRC 64-8 agent authorisation statuses for individual clients. Returns all 11 authorisation types with a user-managed status (Not Requested, Requested, Granted) and a computed IsRequired flag derived from the client's active or proposed services.
Client - Billing - Lines
6 endpointsBillable line items generated from recurring client services. Line items are created by the billing engine and accumulate until bundled into an invoice submission. Supports listing, retrieval, and deletion. Items progress through statuses: Pending → Approved → Invoiced (or Cancelled).
Client - Billing - Submissions
6 endpointsInvoice submissions represent batches of approved billable line items pushed to the connected accounting platform. Each submission tracks the external invoice ID/number, submission status, and any error messages from failed attempts.
Client - Books
17 endpointsA client's OWN accounting software: the organisation their record is bound to, and the invoices, contacts, bank accounts and profit and loss inside it. Distinct from the client's customer record in the practice's books, which is what the practice invoices them against. Organisations are always read live from the platform rather than a stored list, one client may be bound to one organisation and one organisation to one client, and platforms that offer no profit and loss report say so with a 400 rather than an empty report.
Client - Business Details
3 endpointsManage business-specific information for clients that are businesses (non-companies). Provides get and update operations for business details including trading name, business type, registration information, and other business-specific data. This is a one-to-one relationship with Client entities of type Business, complementing Company Details for corporate clients.
Client - Confirmations
1 endpointTenant-wide list of client confirmation workflow steps. Returns a paged list of confirmation steps across all clients with filtering by status and client code. Used by the Requests page to show outstanding client confirmations.
Client - Contacts
5 endpointsManage contacts associated with specific clients. Provides standard CRUD operations for client contacts including creation, retrieval, updating, and deletion. Client contacts are scoped to individual clients and include contact type, name, email, phone, and other contact information.
Client - Custom Fields
2 endpointsManage custom field values for individual clients. Custom fields are defined at the tenant level and values are stored per client. Supports getting all field definitions with their current values for a client, and setting/updating values with type validation (text, number, date, boolean, select, multi-select).
Client - Dates
2 endpointsManage key dates for individual clients including year-end, tax deadlines, and other compliance-related dates. Provides get and save operations for client date management.
Client - Document Requests
11 endpointsManage document requests for clients. Create requests asking clients to provide specific documents, track submissions and review responses. Supports the full lifecycle: Draft → Open → Submitted → Accepted/Rejected/Cancelled. Documents can be uploaded by staff or portal clients, and submissions include comments and review workflows.
Client - Documents
26 endpointsManage documents associated with specific clients. Supports creating, listing, updating, and deleting client documents. Includes filtering by document type and review status. Documents uploaded by clients via the portal start with ReviewStatus=PendingReview and must be approved or rejected by an internal user. The list endpoint defaults to showing only Approved documents — use the reviewStatus filter parameter to view PendingReview or Rejected documents. Also serves a tenant-wide list of client documents across all clients, defaulting to only those sent for client approval, used by the Requests page to show outstanding document approvals.
Client - Email Rules
5 endpointsRules that associate emails with a client. Each rule is an email address (e.g. john@acme.com), a domain (e.g. acme.com), or a specific message ID (GUID). Email addresses match that exact sender/recipient, domains match all emails from that domain, and message IDs pin a specific email to the client. The same value can be a rule for multiple clients.
Client - Emails
1 endpointReturns emails associated with a client based on its configured rules. Queries all connected mailboxes using the client's rules as filters and returns matching conversations. Supports direction, search, and pagination.
Client - Links
5 endpointsManage external links associated with specific clients. Provides CRUD operations for client links which can point to external resources, websites, or portals relevant to the client. Links include URL, description, and link type information.
Client - MTD Adjustable Summaries
4 endpointsBusiness source adjustable summaries (BSAS) for a client's MTD Income Tax income sources — HMRC's accounting result for a period, which the practice reviews and adjusts before the tax return. Adjustments are amounts to add or subtract rather than replacements, and HMRC accept them only once per summary, so a correction means triggering a fresh summary.
Client - MTD Annual Submissions
3 endpointsYear-end adjustments, allowances and non-financial declarations for a client's MTD Income Tax income sources. Unlike a quarterly update these are data updates rather than filings with deadlines: HMRC holds the authoritative values, a save replaces them in full, and the retrieve re-shows whatever software last sent them. Who sent or deleted a submission from Sodium is recorded separately, because HMRC's own retrieve never says.
Client - MTD Capital Gains
4 endpointsA client's capital gains for a tax year under MTD Income Tax, across HMRC's two resources: everything other than UK residential property (listed and unlisted shares, crypto-assets, other assets), and UK residential property disposals reported for Self Assessment. Both are full replacements at HMRC — a save carries every disposal that should survive, because anything absent is cleared. Reporting a residential disposal here does not discharge the in-year property payment-on-account return due within 60 days of completion.
Client - MTD Dividends
7 endpointsA client's dividend income for a tax year under MTD Income Tax: foreign and special dividends, plain UK dividends, and the directorship information HMRC require where the client is a director of a close company. Three independent HMRC resources, each saved and cleared on its own. Data updates rather than filings with deadlines — HMRC hold the values, a save replaces them in full, and the retrieve re-shows whatever software last sent them.
Client - MTD Employments
12 endpointsA client's employment income for a tax year under MTD Income Tax: the employments themselves, the financial details held against each, and the income belonging to no single employment (non-PAYE tips, share schemes, lump sums, deductions). Employments come from two places and what can be done to them differs: one HMRC hold from the employer's RTI submissions cannot be edited or deleted, only ignored, while a custom employment added here can be amended and deleted but never ignored.
Client - MTD Foreign Properties
3 endpointsHMRC's register of a client's foreign properties, which exists from tax year 2026-27 onwards. A foreign property income source holds several lets, and HMRC changed how a let is named between two adjacent years: by country code up to 2025-26, by a registered property identifier from 2026-27. That makes the register a precondition for filing rather than a settings page — until a property exists, nothing about the let can be sent. Registering is not idempotent: each call creates a new property.
Client - MTD Income Sources
5 endpointsDetail and per-tax-year settings for a client's MTD income sources — the accounting basis, the periods of account, and the late accounting date rule election. These are the writes; to read a year, use Client - MTD Tax Year, which returns every source with its deadlines in one call.
Client - MTD Losses
10 endpointsA client's losses and loss claims under MTD Income Tax, across HMRC's two shapes. Up to 2025-26 a loss and a claim are each a record with an identifier — created once, amended through that id, deleted, and for carry-sideways claims ordered against each other. From 2026-27 the whole position is one set of figures per income source per year, replaced in full on every save. The amends are POST rather than PUT, mirroring HMRC, who refuse an amend that changes nothing.
Client - MTD Quarterly Updates
7 endpointsPrepare and submit Making Tax Digital for Income Tax quarterly updates for a client's income sources. Figures are cumulative from the start of the tax year: a correction is a fresh submission restating the year to date, not an amendment to an earlier quarter. Drafts are saved separately from sending, and submitting records who declared the figures correct. HMRC's obligation status can take up to an hour to reflect a submission.
Client - MTD Reliefs
10 endpointsA client's reliefs for a tax year under MTD Income Tax: investment (VCT, EIS, SEIS, community investment), other reliefs (loan interest, maintenance payments, post-cessation losses), foreign tax reliefs, pension contributions and charitable giving. HMRC keep the five as independent resources, so each has its own save and delete; the read returns all five together because the practice reviews them as one job.
Client - MTD Savings
5 endpointsA client's savings income for a tax year under MTD Income Tax: the interest reported against each named UK savings account, and the other savings income that belongs to no account (securities interest, foreign interest). Accounts are registered once and live across every tax year while their interest belongs to a single year; HMRC offer no way to delete an account, only to rename it.
Client - MTD Tax Return
4 endpointsReviewing a client's Making Tax Digital Income Tax year and sending their tax return to HMRC. The review is thirty or more HMRC requests behind one call — every income source's obligations, reporting setup, held position and year-end work, all their other income, losses, liability adjustments, HMRC's calculation, and the declaration with whatever is standing in the way — so it is slow the first time a year is opened and fast afterwards. What it reports as standing in the way is advice rather than a gate: HMRC hold the real rules and a practice that disagrees may proceed. The one exception is the declaration, which HMRC require the software itself to enforce. Behind its own permission, separate from quarterly updates, because HMRC allow a supporting agent to file the second and not the first. This filing is not idempotent: a submission whose outcome is unknown is settled by reconciling it against HMRC's own record, never by sending again.
Client - MTD Tax Year
4 endpointsA client's Making Tax Digital position for one tax year, assembled from the HMRC resources behind it: the income sources with their quarterly update deadlines and the year's tax return deadline, one source's reporting setup, and everything HMRC hold outside the client's trading income. These replaced a dozen per-resource retrieves — each of those was a browser call, an MTD service call and an HMRC call, and drawing one panel meant enough of them at once that HMRC's rate limiter refused one. Areas HMRC could not be asked about are named on the response and mean 'not asked', never 'nothing held'.
Client - Notes
6 endpointsManage notes associated with specific clients. Supports creating, listing, updating, and deleting client notes with filtering capabilities. Notes can be used for tracking communications, observations, or important client information with timestamp and author tracking.
Client - Pipelines
8 endpointsManage a client's placements on sales pipelines (kanban cards). Provides CRUD operations for putting a client (typically an Active Prospect) on a pipeline, plus a PATCH endpoint for updating only the stage (used for drag-and-drop). Also serves top-level pipeline card queries that are not scoped to a single client, returning lightweight summary projections for kanban board display with filtering by pipeline code and stage code.
Client - Recurring Task Schedules
4 endpointsOne client's schedule links on recurring tasks. Every recurring task has a default schedule plus any number of custom schedules; a client linked to a custom schedule gets its occurrences from that schedule instead of the default. These routes read the schedule a client is linked to on a task, link the client to an existing schedule, and revert the client to the default. On the client-filtered recurring-tasks list, each row's schedule is the one that applies to the client. The schedules themselves are managed task-side - see the schedule routes under the Tasks - Recurring tag.
Client - Request & Chasing
2 endpointsSettings for client request email templates and automated chasing frequencies. Controls which content blocks are used for document request, approval, confirmation, and form submission emails, plus how often outstanding items are chased.
Client - Services
8 endpointsManage billable services associated with specific clients. Provides CRUD operations for linking BillableServices to individual clients, tracking which services are actively provided to each client. This represents the client-specific instances of services from the tenant's service catalog.
Client - Settings
2 endpointsTenant-level configuration for client field visibility and behavior. Provides get and update operations for controlling which client fields are enabled and displayed in lists (client manager, partner, associate, internal reference, external links). Includes settings for internal reference uniqueness validation. Requires PracticeDetails permissions to view or modify.
Client Billable Services
2 endpointsTop-level client billable service queries not scoped to a single client. Returns lightweight summary projections designed for kanban board display, with filtering by service code and stage code. Also provides a PATCH endpoint for updating only the stage (used for drag-and-drop).
Client Billing - Line Items
1 endpointTenant-wide view of billing line items across all clients. Supports pagination and filtering by status, client, and billing date range. For client-scoped operations (approve, cancel) see the Client - Billing - Lines tag.
Client Billing - Settings
2 endpointsTenant-level settings for recurring client billing and invoicing defaults. Enable or disable the billing module, configure default invoice day of month, payment terms, line item approval requirements, and default accounting codes.
Client Billing - Submissions
1 endpointTenant-wide view of invoice submissions across all clients. Supports pagination and filtering by status, client, and billing date range. For client-scoped operations (submit, retry, projected) see the Client - Billing - Submissions tag.
Client Portal - Access
3 endpointsManage portal access for client contacts. Toggle portal access on or off for specific contacts on individual clients. When granting access, a PortalUser record is automatically created if one doesn't exist for the contact. Contacts must have an email address to be granted portal access.
Client Portal - Settings
2 endpointsTenant-level settings for the client portal. Configure the portal title and optional design theme. When no settings exist, the portal title defaults to the practice/tenant name.
Client Portal - Users
2 endpointsManage portal user accounts across the tenant. List all portal users and enable or disable individual portal user accounts. Disabling a portal user prevents them from logging in to the portal without revoking their per-client access grants.
Clients
10 endpointsComprehensive client management including CRUD operations and task summaries. Supports filtering by manager, partner, status, type, and search terms.
Clients - CSV Export
2 endpointsCSV-based client export with flexible column mapping. Start an export with optional column mappings (reuse saved import mappings or define ad-hoc mappings). If no mapping is provided, all fields are exported with enum names as headers. Filter clients by manager, partner, status, type, service code, or search term. Export jobs are processed asynchronously with a sync-when-fast pattern (waits up to 10 seconds). Poll for status and download the generated CSV via a time-limited URL.
Clients - CSV Import
3 endpointsCSV-based client import with flexible column mapping. Upload a CSV file to get a preview with auto-suggested column mappings. Configure mappings using system defaults (Limited Company, Individual) or create custom mappings. Start the import with sync-when-fast pattern (waits up to 10 seconds, returns 201 if completed, 202 if still processing). Supports create-only, update-only, or create-and-update modes with configurable match fields (CompanyNumber, Code, Name, etc.).
Clients - Platform Import
3 endpointsImport clients from third-party platforms (e.g., Xero, QuickBooks) or via direct import with comprehensive data. Includes direct import (create client with all related data in one request), listing available clients from connected platforms, and importing selected or all clients with optional Companies House enrichment. Uses a sync-when-fast pattern for platform imports (waits up to 10 seconds, returns 201 if completed, 202 if still processing).
Clients - Saved Filters
6 endpointsSaved client filter management for personalized client views. Provides CRUD operations for creating, retrieving, updating, and deleting saved client filters. Users can save their preferred client filtering criteria (by manager, partner, associate, status, type, service, etc.) for quick access and reuse. Saved filters are scoped to individual users within a tenant.
Clients - Services - Import
6 endpointsCSV-based client service import for bulk-assigning billable services to clients. Upload a native-format CSV to preview what will be created, updated, or left unchanged, then confirm to process. Supports creating new assignments and updating existing ones when values differ. Engager conversion endpoints analyze and convert Engager-format CSVs to native format (fully stateless).
Companies House
8 endpointsIntegration with UK Companies House API for retrieving official company information. Provides endpoints to search companies by name or number, get detailed company information, retrieve company officers, fetch key dates for compliance tracking, view filing history with filtering by category, get specific filing details, and download official documents as PDFs.
Contacts
7 endpointsOrganization-wide contact management across all clients. Provides CRUD operations for contacts that can be associated with multiple clients. Includes an endpoint to retrieve all clients associated with a specific contact, enabling tracking of contact relationships across the tenant's client base.
Content Blocks
12 endpointsReusable content blocks for documents and proposals. Supports CRUD operations with filtering by category and search terms. Content blocks contain HTML content with image support (images are processed for URL transformation). Includes library access for creating content blocks from predefined templates. Used in proposal generation and document templating.
CSV Mappings
5 endpointsManage reusable CSV column mappings for client import and export operations. Mappings define how CSV columns map to client fields and can be saved for reuse across multiple imports or exports. System presets (Limited Company, Individual) are read-only. Tenant-specific mappings can be created, updated, and deleted.
Custom Field - Groups
5 endpointsNamed groups for organising custom field definitions. Groups can optionally be displayed as their own card on entity detail pages. Supports CRUD operations with filtering by entity type.
Custom Fields
5 endpointsTenant-level custom field definitions for extending entity data. Define custom fields with types (Text, Number, Date, Boolean, Select, MultiSelect) that can be attached to entities like Clients. Supports CRUD operations with filtering by entity type and archived status.
Custom Tokens
5 endpointsUser-defined reusable tokens for document templates. Custom tokens use {{ Custom.TokenName }} syntax and prompt users to fill in values when generating documents. Each token has a name (the template identifier), optional description (prompt text), and optional default value.
Data Form - Categories
5 endpointsTenant-configurable categories for organizing forms. Provides CRUD operations for creating, retrieving, updating, and deleting form categories.
Data Form - Requests
7 endpointsForm requests sent to clients. View submissions and review individual answers (accept or reject per field). Accepted answers apply the submitted value to the client record. Supports auto-accept for forms configured to skip manual review.
Data Forms
14 endpointsCustom form management. Create forms with sections and questions, publish them, and send to clients individually or in bulk. Questions can map to client fields, custom fields, or be form-specific.
Design Theme - Background Images
4 endpointsManage background images on design themes for PDF rendering. Each background image can target specific pages (all, first only, all except first) and has configurable positioning (full page, corners, center, or custom coordinates), dimensions, and opacity.
Design Themes
8 endpointsDesign themes and branding customization for documents and proposals. Provides CRUD operations for themes, plus specialized endpoints to get the default theme, retrieve generated CSS for a specific theme (with optional CSS selector), and get CSS for the default theme. Themes control colors, fonts, and styling for client-facing documents.
DirectDebit
7 endpointsIntegration with third-party direct debit platforms. Provides endpoints to list payers (customers), create payers, list mandates, and create mandates. The direct debit platform is determined by Tenant.DirectDebitConnectionCode which references a ThirdPartyConnection with DirectDebit capability. A payer can have multiple mandates (e.g., different bank accounts). Create mandate returns authorization URL for customer approval.
Document - Templates
12 endpointsDocument templates using Liquid syntax for dynamic content generation. Supports CRUD operations with filtering by template type. Includes library access for using predefined templates, and a render endpoint to generate PDFs from templates with provided data (client, partner, manager, practice, proposal details). Templates support design theme integration for consistent branding.
Document Requests
1 endpointTenant-wide list of document requests. Returns a paged list of document requests across all clients with filtering by status and client code. Used by the Requests page to show outstanding document requests.
Documents - Categories
5 endpointsTenant-configurable document categories for organizing client documents. Provides CRUD operations for creating, retrieving, updating, and deleting custom document categories. Each tenant can define their own document categories with custom names and sort orders.
Email - Broadcasts
11 endpointsAd-hoc mass emails to a filtered set of clients with per-client Liquid token rendering. Provides draft CRUD, a pre-send resolved recipient list with skip warnings (missing contacts, email contact preference), per-client preview, test send to the current user, async sending with progress counters, a per-client delivery log, and cancellation. Recipient selection combines client filters with hand-picked additions and exclusions; recipients are resolved from client contact types, user types (manager/partner/associate/service manager), and static addresses — the same configuration shape as SendEmail workflow steps.
Email - Configs
7 endpointsEmail configuration management for tenant-specific SMTP or OAuth email providers. Provides CRUD operations for creating, retrieving, updating, and deleting email configurations. Supports multiple configurations per tenant with default/shared management, SMTP settings, and OAuth (Microsoft365/Google) flows. Includes a test endpoint to verify configurations.
Email - History
2 endpointsEmail history and delivery status tracking. Provides endpoints to view sent emails, check delivery status, and filter by various criteria including custom metadata. Enables tenants to check email delivery status.
Email - Mailbox
13 endpointsRead, send, reply to, and manage emails in a tenant's connected mailbox. Only available for OAuth email configurations (Microsoft365/Google) that have ReadEnabled set to true. Conversations provide a thread-grouped view, while Messages provide a flat list. Supports filtering by direction (inbound/outbound) and search by subject or sender. Sending and replying requires SendEnabled to be true on the configuration. Includes OAuth reconnection for expired or misconfigured connections.
Email - Settings
2 endpointsEmail configuration and settings for tenant email communications. Provides get and update operations for email settings including sender details, email branding (header/footer content blocks, design theme), and other email-related preferences. Requires PracticeDetails permissions to view or modify.
Engagement - Acceptance
1 endpointAnonymous client-facing endpoints for engagement acceptance workflow. Enables clients to view engagement details without authentication, retrieve CSS for the acceptance page using the configured design theme, download proposal and engagement letter PDFs, and submit acceptance with digital signature and IP address tracking. All endpoints use a GUID-based secure link for access.
Engagement - Settings
2 endpointsSettings and configuration specific to engagement generation and management. Accessed via the Practice endpoints at /tenants/{tenant}/practice/engagement-settings. Controls default proposal templates, design themes, email templates, and other engagement-specific preferences.
Engagements
13 endpointsComprehensive engagement creation, management, and client communication. Provides CRUD operations with filtering by status, client, and search terms. Includes specialized endpoints for uploading and downloading proposal PDFs and letters of engagement (base64-encoded content), sending engagement emails using configured templates with tracking, and retrieving email history for engagements. Engagements capture a snapshot of ClientBillableServices at a point in time.
External Proposals
4 endpointsRead-only access to proposals from external proposal platforms (e.g., Socket). The platform is determined by Tenant.ProposalConnectionCode which references a ThirdPartyConnection with the Proposals capability.
Filing Credits
1 endpointThe practice's prepaid filing credit balance. Submissions to HMRC spend credits at the configured cost per filing type and are refused when the balance cannot cover them; corrections to an already-charged position are free.
HMRC Connection
3 endpointsThe practice's HMRC connection, used for digital (Making Tax Digital) agent authorisations. Provides the connection status, starts the HMRC consent journey by returning the authorization URL to send the user to, and disconnects the practice from HMRC.
Holidays
5 endpointsTenant-specific custom holidays (e.g., company anniversary, office closure dates). Provides CRUD operations for managing holidays that are specific to your organization. These holidays are combined with bank holidays (based on Working Days region setting) when calculating task scheduling and holiday adjustments.
Import Jobs
3 endpointsAsynchronous import job status tracking and management. Provides endpoints to retrieve the current status of import jobs initiated from third-party platforms (e.g., client imports), list all import jobs for a tenant with progress details, and poll for job completion. Import jobs track total items, processed items, success count, failure count, and overall status (queued, in progress, completed, failed, cancelled).
Integrations - Accounting
6 endpointsIntegration with third-party accounting platforms. Provides endpoints to list customers from connected accounting systems, retrieve individual customer details, create new customers, and fetch invoices by customer. The accounting platform is determined by the Tenant.AccountingConnectionCode which references a ThirdPartyConnection.
Integrations - AML
13 endpointsIntegration with third-party Anti-Money Laundering platforms. Provides endpoints to list, get, search, and create clients in connected AML systems, as well as retrieve and start risk assessments for individual AML clients. The AML platform is determined by the Tenant.AmlConnectionCode which references a ThirdPartyConnection.
Making Tax Digital
4 endpointsConfirming with HMRC which clients the practice is currently authorised to act for under Making Tax Digital. Lists every MTD authorisation the practice's clients require alongside the status held, what HMRC last confirmed, and whether enough is known about each client to ask HMRC at all.
Media Library - Documents
6 endpointsPractice document library — static files (guides, checklists, terms PDFs). Supports multipart upload, metadata updates, deletion (blocked while referenced by workflow email steps), listing with search, and authenticated streaming download. Documents are private and can be pre-specified as attachments on Send Email workflow steps.
Media Library - Images
6 endpointsImage asset management for pictures used in emails, documents, and design themes. Supports creating image assets via file upload, retrieving assets with public download URLs, updating asset metadata, deleting assets, and streaming image content with caching support (ETag-based 304 Not Modified responses).
Metadata
85 endpointsSystem metadata including enums, display names, colors, icons, and configuration options for all system enums. Provides read-only endpoints for retrieving metadata for enums such as client statuses, task statuses, service categories, billing frequencies, permissions, and many others. Also includes third-party platform metadata with capabilities and OAuth configuration details, and the currency/locale whitelists a practice can be configured with.
Pipeline - Intake Tasks
6 endpointsTemplates for intake tasks that are created automatically when a client (typically an Active Prospect) is added to a pipeline. Each template defines the task name, due-date offset from the card's start date, assignment, optional workflow, category, and checklist. The pipeline sibling of Service - Onboarding Tasks.
Pipelines
9 endpointsTenant-level sales pipeline catalog management. Pipelines are prospect funnels with user-defined kanban stages and no pricing/proposal concerns. Provides CRUD operations with filtering by archived status, stages, kanban visibility, and search, plus library access for importing pre-built pipelines.
Practice
2 endpointsPractice-level settings and configuration for the tenant. Includes endpoints to get and update practice details (firm name, address, contact information, professional body memberships, etc.). Requires PracticeDetails permissions to view or modify.
Professional Clearance
8 endpointsProfessional clearance letter management for client transitions. Provides CRUD operations for professional clearance request items (document and information requests sent to previous accountants), settings configuration for PCL emails, client-specific endpoints to retrieve applicable PCR items (filtered by billable services and including global items), and sending professional clearance letters via email with template variable substitution.
Reports
21 endpointsCurated, typed, read-only reports over the tenant's operational data. Each report accepts a preset or custom date range plus entity filters (service, client, user, team, category) and returns headline KPIs with breakdown rows carrying entity codes for drill-down, plus a synchronous CSV export sibling. Report #1 is Service Delivery Turnaround: how fast tasks complete versus their due and statutory dates, grouped by service, client, assignee, or month, with a per-service workflow-step bottleneck drill-down splitting client-wait time from internal time. Requires Reports permissions; CSV export requires Export.
Revenue Ranges
5 endpointsTenant-configurable revenue ranges for client classification and pricing. Provides CRUD operations for creating, retrieving, updating, and deleting custom revenue ranges. Revenue ranges are used to categorize clients by annual revenue and enable revenue-based pricing overrides for billable services. Each tenant can define their own revenue ranges with custom names and sort orders.
Roles
6 endpointsCustom (tenant-defined) roles granting per-entity capability sets. Capabilities are independent flags — granting Import does not imply Delete; Admin on an entity grants everything on it. Create and update cap the requested grants at the capabilities the requesting user holds, so a role manager can never hand out more access than they have. Deletion is blocked while users are assigned to the role. The built-in system roles (Admin, Standard User, Viewer) are code-defined and not managed here.
Sales Pipeline - Settings
2 endpointsTenant-level settings for the Sales Pipeline feature. A tenant singleton exposing whether the feature is enabled — when off (the default) the pipeline UI is hidden and no pipeline automations run; when on, Active Prospects are also included in the tenant's billable client count.
Scheduled Sends
5 endpointsDeferred outbound sends: emails, replies, workflow step sends, document requests, data forms, document approvals and broadcasts scheduled for a later dispatch time. Rows are created by passing scheduledAt to the normal send endpoints; these endpoints list, reschedule, edit, dispatch-now and cancel them. Used by the Requests page Scheduled tab.
Service - Categories
5 endpointsTenant-configurable categories for grouping billable services. Provides CRUD operations for creating, retrieving, updating, and deleting service categories. Every tenant sees a shared set of built-in categories plus any it creates itself. A tenant can rename, reorder and recolour a built-in category - the change applies only to that tenant and leaves existing services attached to it - but built-in categories cannot be deleted.
Service - Onboarding Tasks
6 endpointsTemplates for one-off tasks that are automatically created when a client takes on a billable service. When a ClientBillableService becomes Active, the system creates TaskItems from matching OnboardingTaskTemplates. Each template belongs to a specific BillableService and defines task details like name, description, due date offset from service start, assignment rules, and optional workflow.
Service - Packages
8 endpointsService package management for bundling multiple billable services together. Provides CRUD operations for creating, retrieving, updating, and deleting service packages. Each package contains a list of billable services with pre-configured billing frequency, pricing options, and pre-answered pricing factors. Packages can be applied to clients in bulk, creating multiple ClientBillableService records at once with the pre-configured settings.
Services
15 endpointsTenant-level billable services catalog management. Provides CRUD operations with filtering by category, client type, archived status, and search terms. Includes library access for creating services from templates, AI-powered service generation from service names (generates description and pricing), pricing factor generation for existing services, and creating services from library templates with optional property overrides.
Services - Import
3 endpointsCSV-based import and export of the billable services catalog. Auto-detects the file format: native Sodium exports (rows with a matching Code update the existing service) or Ignition services exports (create-only). Analyze returns editable preview rows; import re-uploads the file with the user's selections and creates/updates services plus deduplicated Service Terms content blocks. Export produces the native format including terms HTML, doubling as the import template. All endpoints are stateless.
Subscription
6 endpointsTenant subscription management. View the current subscription, subscription history, change packages, and cancel subscriptions. Cancelling ends the current subscription immediately and marks the tenant as cancelled. Choosing a new plan via PUT clears the cancellation. The pricing tier is automatically determined from the tenant's active client count.
Subscription - Billing
10 endpointsBilling account management for tenant subscriptions. Create and manage billing accounts, set up Direct Debit mandates via GoCardless, and view invoices. Only tenant administrators can access billing endpoints.
Subscription - Discounts
3 endpointsDiscount code management for tenant subscriptions. Redeem promotional discount codes to receive percentage-based billing discounts, view the active discount, or remove it to apply a different code. Discounts are applied automatically during monthly billing.
Subscription - Packages
3 endpointsPublic endpoints for listing packages and their pricing tiers. Packages define which feature modules are available, and each package has its own set of pricing tiers.
Task - Emails
1 endpointReturns email conversations that have been explicitly linked to a task.
Task - Notes
6 endpointsManage notes associated with specific tasks. Supports creating, listing, updating, and deleting task notes. Notes can be pinned for priority visibility (PinnedLevel > 0) and include author tracking and timestamps. Useful for collaboration and tracking important information related to tasks.
Task - Workflow Notes
6 endpointsManage notes associated with specific workflow steps within tasks. Supports creating, listing, updating, and deleting step-level notes. Notes can be pinned for priority visibility (PinnedLevel > 0) and include author tracking and timestamps. Useful for documenting work done on specific workflow steps.
Task - Workflows
10 endpointsTask workflow progress tracking and step management for individual tasks. Provides endpoints to retrieve workflow groups with steps and progress statistics, initialize or reset workflow steps for a task (clears existing progress), remove workflow assignments from tasks, and update individual workflow steps (status, assignment, email configuration, time tracking). Supports customizing email recipients and execution mode for SendEmail steps before execution. All operations validate dependencies and maintain workflow integrity.
Tasks
10 endpointsComprehensive task management including creation, assignment, tracking, and filtering. Supports listing tasks with flexible date range handling, overdue filtering, agenda mode (including workflow steps), and filtering by client, user, recurring task, category, status, and saved filters. Can optionally include projected (virtual) tasks alongside materialized tasks. Provides full CRUD operations plus bulk update (status and/or assigned user) with multi-tenant scoping.
Tasks - Categories
5 endpointsTenant-configurable task categories for organizing and classifying tasks. Provides CRUD operations for creating, retrieving, updating, and deleting custom task categories. Each tenant can define their own task categories with custom names and sort orders to organize tasks according to their specific workflow and organizational needs.
Tasks - Focus Config
2 endpointsPer-user configuration for the Task Focus Panel sidebar. Provides GET (auto-creates empty default) and PUT (upsert) operations for managing which saved task filters appear in the focus panel. Each item references a user's own saved task filter with optional label, sort order, and color. One config per user per tenant.
Tasks - Import
5 endpointsTask CSV import and export. Analyze parses a native-format task CSV and returns preview rows with client/user/team/category names resolved and unmatched values flagged; import re-uploads the analyzed file with the user's selections and creates or updates tasks (matched by Code), turning a row's Notes text into a task note. Export downloads all tasks as a native-format CSV that doubles as the import template and supports update-by-code round-trips. Analyze and import are stateless — nothing is persisted between the two calls.
Tasks - Projected
3 endpointsProjected (virtual) task items generated from recurring tasks that haven't been materialized yet. Provides endpoints to list projected tasks within date ranges with filtering, retrieve individual projected tasks by composite code (format: proj-{recurringTaskCode}-{clientCode}-{yyyyMMdd}), materialize projected tasks into real database records, and retrieve workflow groups for projected tasks with resolved assignments. Projected tasks are excluded from results once materialized.
Tasks - Recurring
18 endpointsRecurring task templates and scheduling for automated task generation. Supports CRUD operations with filtering capabilities, plus endpoints to manage client associations (get/update specific clients for a recurring task) and service associations (get/update billable services that trigger task generation). Recurring tasks generate projected tasks based on configured recurrence patterns.
Tasks - Saved Filters
6 endpointsSaved task filter management for personalized task views. Provides CRUD operations for creating, retrieving, updating, and deleting saved task filters. Users can save their preferred task filtering criteria (by client, status, date range, assigned user, etc.) for quick access and reuse. Saved filters are scoped to individual users within a tenant.
Tasks - Templates
9 endpointsOne-off task templates: pre-defined task shapes (description, checklist, optional workflow, category, assignment rule, due-date offset) that users turn into real tasks for a chosen client on demand. Templates never create tasks automatically. Supports CRUD operations plus library browse, import (cascading referenced workflows and categories), and revert-to-library.
Tenants
5 endpointsMulti-tenant organization management and configuration. Provides endpoints to create new tenants with package assignment and invite code validation, list all tenants the authenticated user belongs to, retrieve tenant details by code, get the current user's role and permissions within a tenant, update tenant information, and delete tenants (with validation to prevent deletion if clients exist). Tenants represent separate organizations within the multi-tenant system.
Third-Party Connections
13 endpointsOAuth connections and integrations to third-party platforms (accounting systems, practice management tools, etc.). Provides CRUD operations for managing connections, an anonymous OAuth callback endpoint for handling authorization code exchanges, and an endpoint to set organization IDs for connections in Initialising status to activate them. Supports platforms like QuickBooks, Xero, and others with OAuth2 authentication.
Time Tracking
14 endpointsTime entries recorded by team members, optionally linked to a client and/or task. Supports CRUD operations with filtering by user, client, task, date range, billable flag, and billed state. Billable entries carry an hourly rate snapshot and can later be converted into client billing line items.
Time Tracking - Settings
2 endpointsTenant-level settings for time recording. Enable or disable time tracking (hides all time tracking UI when off), require entries to be linked to a client or task, and set the practice default hourly rate.
Time Tracking - Timer
8 endpointsThe calling user's live timer — at most one per user. Start or update it, read it (returns null when nothing is running), or discard it. Stopping is client-side: the elapsed time pre-fills a time entry and the timer is discarded once that entry is saved.
Time Tracking - Working Patterns
5 endpointsNamed working weeks team members can be put on — "Full time", "Part time (Mon/Wed/Fri)" — holding the minutes expected on each day. One pattern per tenant is the default, used for every member not put on a specific one. The Team Time report measures logged hours against them.
User - Account
6 endpointsUser account management endpoints including retrieving unused invite codes for the authenticated user. These endpoints help users manage their invite code allocations for creating new tenants.
User - Invitations
3 endpointsUser invitation workflow for adding users to tenants. Provides endpoints to list pending invitations for the authenticated user, accept or decline invitations (validates email verification), and send invitation emails to users. Invitations include token-based security, email verification requirements, and status tracking (pending, accepted, declined).
User - Teams
9 endpointsTeam management for group task assignment. Provides CRUD operations for creating, retrieving, updating, and deleting teams. Includes member management endpoints for adding and removing users from teams, and a 'my teams' endpoint for listing the current user's teams. Teams enable work to be assigned to a group rather than an individual, allowing team members to pick tasks from a shared queue.
User - View Preferences
2 endpointsPer-user view preferences for storing UI configuration as JSON. Each user can have one preference per view key (e.g. "dashboard" for dashboard layout). GET auto-creates an empty default; PUT creates or updates the configuration.
Users
13 endpointsUser management and authentication within the application. Provides endpoints to get the current authenticated user's profile, verify email addresses using verification keys from email links (with token expiration handling), and resend verification emails to authenticated users. Also includes tenant-scoped user management (CRUD operations) accessed via /tenants/{tenant}/users for managing users within specific tenants.
Webhooks
1 endpointInbound webhook receipt from third-party platforms (e.g. FuseSign e-signature events). Anonymous by necessity — the opaque connection token in the URL identifies the tenant, and each provider's signature header verifies origin. Deliveries are persisted to an inbox and processed asynchronously; 200 means durably received, including redeliveries of an event already held.
Workflow Steps - Pending
2 endpointsManual-mode outbound workflow steps that are ready to send. Dependencies are met and a user needs to review and trigger the send. Used by the Requests page Ready to Send tab. Steps with a pending scheduled send are excluded until the schedule dispatches, fails or is cancelled.
Workflows
11 endpointsReusable workflow definitions and templates for task automation. Provides CRUD operations for creating, retrieving, updating, and deleting workflow templates. Includes library access for browsing predefined templates, importing workflows from the library, and AI-powered workflow generation from a name and description. Workflows define sequences of steps, dependencies, assignments, and completion requirements that can be applied to tasks to standardize processes across the organization.
Working Days
3 endpointsConfigure working days, holidays, and task scheduling adjustments. Provides get and update operations for bank holiday region (England, Wales, Scotland, Northern Ireland) and default holiday adjustment behavior when tasks fall on non-working days. Also includes an endpoint to list bank holidays for the configured region.