API Operations

Browse API endpoints by category

Accounting

5 endpoints

Integration 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.

AI

4 endpoints

AI-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.

AML

11 endpoints

Integration 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.

API Keys

3 endpoints

API 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.

Client - Agent Authorisations

2 endpoints

Manage 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 - Business Details

2 endpoints

Manage 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 - Contacts

5 endpoints

Manage 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 endpoints

Manage 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 endpoints

Manage 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 endpoints

Manage 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

16 endpoints

Manage 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.

Client - Email Rules

5 endpoints

Rules 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 endpoint

Returns 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 endpoints

Manage 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 - Notes

6 endpoints

Manage 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 - Services

7 endpoints

Manage 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 endpoints

Tenant-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

1 endpoint

Top-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 Confirmations

1 endpoint

Tenant-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 Documents

1 endpoint

Tenant-wide list of client documents. Returns a paged list of documents across all clients, defaulting to only those sent for client approval. Used by the Requests page to show outstanding document approvals.

Client Portal - Access

2 endpoints

Manage 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 - Users

2 endpoints

Manage 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.

Client Portal Settings

2 endpoints

Tenant-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 Services - CSV Import

6 endpoints

CSV-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).

Clients

10 endpoints

Comprehensive client management including CRUD operations and task summaries. Supports filtering by manager, partner, status, type, and search terms.

Clients - CSV Export

2 endpoints

CSV-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 endpoints

CSV-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

2 endpoints

Import 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

5 endpoints

Saved 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.

Companies House

7 endpoints

Integration 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

6 endpoints

Organization-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 endpoints

Reusable 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 endpoints

Manage 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 endpoints

Named 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 endpoints

Tenant-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 endpoints

User-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 endpoints

Tenant-configurable categories for organizing forms. Provides CRUD operations for creating, retrieving, updating, and deleting form categories.

Data Form - Requests

6 endpoints

Form 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

13 endpoints

Custom 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 endpoints

Manage 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 endpoints

Design 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 endpoints

Integration 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 Requests

1 endpoint

Tenant-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.

Document Templates

11 endpoints

Document 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.

Documents - Categories

5 endpoints

Tenant-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 - Configs

7 endpoints

Email 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 endpoints

Email 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 endpoints

Read, 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 endpoints

Email 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

5 endpoints

Anonymous 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 endpoints

Settings 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 endpoints

Comprehensive 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.

Holidays

5 endpoints

Tenant-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

2 endpoints

Asynchronous 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).

Media Library

6 endpoints

Image and media asset management with Azure Blob Storage integration. Supports creating image assets via file upload, retrieving assets with download URLs (SAS URLs), updating asset metadata, deleting assets, listing assets with download URLs, and streaming image content with caching support (ETag-based 304 Not Modified responses). All images are stored in Azure Blob Storage with SHA-256 hash tracking.

Metadata

69 endpoints

System 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.

Packages

3 endpoints

Public 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.

Practice

2 endpoints

Practice-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 endpoints

Professional 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.

Revenue Ranges

5 endpoints

Tenant-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.

Service - Onboarding Tasks

6 endpoints

Templates 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

6 endpoints

Service 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

12 endpoints

Tenant-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.

Subscription

5 endpoints

Tenant 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 endpoints

Billing 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 endpoints

Discount 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.

Task - Emails

1 endpoint

Returns email conversations that have been explicitly linked to a task.

Task - Notes

6 endpoints

Manage 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 endpoints

Manage 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

8 endpoints

Task 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

7 endpoints

Comprehensive 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 endpoints

Tenant-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 endpoints

Per-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 - Projected

3 endpoints

Projected (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

10 endpoints

Recurring 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

5 endpoints

Saved 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.

Teams

9 endpoints

Team 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.

Tenants

5 endpoints

Multi-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

11 endpoints

OAuth 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.

User - Account

6 endpoints

User 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 endpoints

User 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).

Users

8 endpoints

User 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.

Workflows

10 endpoints

Reusable 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 endpoints

Configure 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.