Cloud-based accounting software for freelancers and small businesses
Cloud-based accounting software for freelancers and small businesses On Nagent, Freeagent is exposed as a fully-configurable accounting integration that any agent can call — 76 actions, and OAuth authentication. No code is required to wire Freeagent into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Freeagent to automate the kinds of tasks accounting teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Freeagent into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Freeagent, with input parameters and output schema. Drop these into any step of an agent built in Helix.
FREEAGENT_CASHFLOW_SUMMARY_FOR_A_GIVEN_DATE_RANGETool to retrieve cashflow summary for a given date range from FreeAgent. Use when you need to analyze cash inflow and outflow over a specific period. Provides net cashflow balance, incoming and outgoing totals, and monthly breakdowns.
Input parameters
End date for the cashflow summary in YYYY-MM-DD format. This marks the end of the date range for which you want to retrieve cashflow data.
Start date for the cashflow summary in YYYY-MM-DD format. This marks the beginning of the date range for which you want to retrieve cashflow data.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_COMPANY_DETAILSTool to retrieve company details from FreeAgent. Use when you need information about the company's registration, accounting periods, or settings.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_A_JOURNAL_SETTool to create a journal set in FreeAgent. Use when you need to create manual journal entries for accounting corrections or adjustments. All journal entries must balance to zero (total debits equal total credits).
Input parameters
Tag to identify journal sets created by your application. Tagged journal sets can only be edited or deleted via the API.
Date for the journal entries in YYYY-MM-DD format. If not specified, defaults to today's date.
Free-text description of the journal set to explain its purpose.
Array of journal entry objects. Each entry must have category and debit_value. The sum of all debit_value amounts must equal zero (balanced entries).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_A_SALES_TAX_PERIODTool to create a sales tax period in FreeAgent. Use when you need to establish a new sales tax period with specific rates and settings for tax reporting.
Input parameters
Boolean to lock changes
Reason for locking
When the period takes effect in YYYY-MM-DD format
Name of the sales tax (e.g., VAT, GST, Sales Tax)
First tax rate as a decimal string
Second tax rate as a decimal string
Third tax rate as a decimal string
Boolean indicating tax reclaim eligibility
Tax registration number (if required)
Either 'Not Registered' or 'Registered'
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_A_TASK_UNDER_A_CERTAIN_PROJECTTool to create a task under a specific project in FreeAgent. Use when you need to add a new task to an existing project for tracking billable or non-billable work.
Input parameters
Name of the task
Task status (e.g., Active, Completed, Hidden). Defaults to Active if not specified.
URL of the project this task belongs to (e.g., https://api.freeagent.com/v2/projects/4547238)
Currency code for billing (e.g., GBP, USD, EUR). Required if task is billable.
Whether clients are charged for this task. Set to true if the task should be billed to clients.
Billing rate as decimal string (e.g., '50.0', '100.00'). Required if task is billable.
Billing period unit: 'hour' or 'day'. Required if task is billable.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_A_TIMESLIPTool to create a new timeslip in FreeAgent. Use when you need to log time worked on a project task by a specific user on a given date.
Input parameters
The task URL that was worked on (e.g., https://api.freeagent.com/v2/tasks/789). This specifies the type of work performed.
The user URL who is logging the time (e.g., https://api.freeagent.com/v2/users/123). This identifies who performed the work.
The number of hours worked as a string (e.g., '2.5' for 2 hours 30 minutes, '1.0' for 1 hour). Use decimal format.
Optional free-text comment describing the work performed. Use this to add context or details about the timeslip.
The project URL this timeslip belongs to (e.g., https://api.freeagent.com/v2/projects/456). This links the time entry to a specific project.
The date the work was performed in YYYY-MM-DD format. This cannot be in the future.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_A_USERTool to create a new user in FreeAgent. Use when you need to add a new team member with specific role and permissions. Requires 'Tax, Accounting & Users' permission level.
Input parameters
User's role in the organization. Note: Certain roles cannot be set depending on company type (e.g., sole traders cannot have Directors or Partners).
Login email address for the new user
User's last name
UK National Insurance Number
User's first name
Opening mileage as of company start date
Whether to send a password setup invitation email to the new user
Access level for the user (0-8 scale): 0=No Access, 1=Time, 2=My Money, 3=Contacts & Projects, 4=Invoices/Estimates/Files, 5=Bills, 6=Banking, 7=Tax/Accounting/Users, 8=Full
10-digit UK Tax Reference number
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_BANK_ACCOUNTTool to create a bank account in FreeAgent. Use when you need to add a new bank account, PayPal account, or credit card account to track financial transactions.
Input parameters
The name of the bank account
The type of bank account to create. StandardBankAccount is the default type for regular bank accounts, PaypalAccount for PayPal accounts (requires email field), and CreditCardAccount for credit card accounts (requires account_number field).
Email address for PayPal accounts. Required when type is 'PaypalAccount'.
The status of the account. Use 'active' for accounts in use or 'hidden' to hide the account. Defaults to 'active'.
The currency code for the account (e.g., 'GBP', 'USD', 'EUR'). Must be a valid 3-letter ISO currency code.
Whether the account is personal (true) or business (false). Defaults to false for business accounts.
Last 4 digits of the account number for credit card accounts. Required when type is 'CreditCardAccount'.
The opening balance of the account as a decimal string (e.g., '0.0', '1000.50'). Defaults to '0.0' if not provided.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_BILL_WITH_ATTACHMENTTool to create a bill with optional attachment in FreeAgent. Use when you need to record a supplier bill with line items and optionally attach supporting documentation.
Input parameters
Payment due date in YYYY-MM-DD format
URI reference to the contact (supplier) associated with this bill
Bill date in YYYY-MM-DD format
Free-text reference identifier for the bill
Represents an attachment to be added to a bill.
Array of bill item objects. Maximum 40 items per bill.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_CATEGORYTool to create a custom category in FreeAgent. Use when you need to add a new category for classifying income or costs. Note that tax_reporting_name is required for cost_of_sales, admin_expenses, current_assets, and liabilities. The allowable_for_tax field is required for cost_of_sales and admin_expenses.
Input parameters
Category name to display in FreeAgent
Unique identifier code within the specified range. Income: 001-049, Cost of sales: 050-199, Admin expenses: 200-699, Drawings: 700-799, Assets: 800-900, Current assets: 901-999, Liabilities: 1000+
Type designation: 'income', 'cost_of_sales', 'admin_expenses', 'current_assets', 'liabilities', etc.
Required for cost_of_sales and admin_expenses categories. Indicates whether this cost is tax-deductible.
Required for cost_of_sales, admin_expenses, current_assets, and liabilities categories. Statutory accounts reporting location.
VAT rate classification. Defaults to 'Standard rate' if not specified. Examples: 'Standard rate', 'Zero rate', 'Exempt'
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_CONTACTTool to create a new contact in FreeAgent. Use when you need to add a new client, supplier, or business contact with their details.
Input parameters
Town or city name
Primary email address for the contact
Locale code for invoice language and formatting preferences
Mobile phone number
Region, state, or county
Country name
Address line 1 (street address)
Address line 2 (additional address information)
Address line 3 (additional address information)
Postal code or ZIP code
Contact's last name. Either first_name/last_name or organisation_name should be provided.
Contact's first name. Either first_name/last_name or organisation_name should be provided.
Primary phone number
Billing email address for invoices and financial communications
Sales tax charging mode: Auto (based on location), Always (always charge), or Never (never charge)
Organization or company name. Either first_name/last_name or organisation_name should be provided.
Whether to display contact name with organization name on invoices. Set to true to show both.
Default payment terms duration in days for invoices sent to this contact
Sales tax or VAT registration number for the contact
Whether this contact uses a separate invoice numbering sequence. Set to true for contact-specific numbering.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_CREDIT_NOTETool to create a credit note in FreeAgent. Use when you need to issue a credit note to a contact for refunds or adjustments. The credit note is created with 'Draft' status.
Input parameters
Due date in YYYY-MM-DD format
URI reference to the contact being credited (e.g., https://api.freeagent.com/v2/contacts/123)
URI reference to project
Additional comments for the credit note
Currency code (e.g., GBP, USD, EUR). Defaults to company's native currency
Date of the credit note in YYYY-MM-DD format
Credit note reference number (auto-generated if omitted)
Boolean flag to hide logo/address on credit note
URI reference to bank account for remittance advice
Discount percentage as decimal string
Array of line items for the credit note
Payment terms in days (set to 0 for 'Due on Receipt')
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_CREDIT_NOTE_RECONCILIATIONTool to create a credit note reconciliation in FreeAgent. Use when you need to reconcile a credit note against an invoice, offsetting the invoice amount with the credit note.
Input parameters
Full URL reference to the invoice being reconciled (e.g., 'https://api.freeagent.com/v2/invoices/123'). This is the invoice that will be offset by the credit note.
The currency code for the reconciliation (e.g., 'GBP', 'USD', 'EUR'). Must be a valid 3-letter ISO currency code.
The date of the reconciliation in YYYY-MM-DD format. This is the effective date when the reconciliation occurs.
Full URL reference to the credit note being applied (e.g., 'https://api.freeagent.com/v2/credit_notes/123'). This credit note will be used to offset the specified invoice.
The gross value of the reconciliation as a decimal string (e.g., '25.0', '100.50'). This is the amount being reconciled between the credit note and invoice.
The exchange rate as a decimal string for conversion to the company's native currency (e.g., '1.0' for same currency, '1.25' for foreign exchange). Use '1.0' when the currency matches the company's base currency.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_ESTIMATETool to create a new estimate in FreeAgent. Use when you need to create an estimate, quote, or proposal for a client. Requires contact, reference, date, type, status, and at least one estimate item with position, item_type, quantity, price, and description.
Input parameters
Additional notes or description for the estimate
Initial status of the estimate. Must be one of: Draft, Sent, Open, Approved, Rejected, Invoiced
URI of the contact for whom the estimate is created (e.g., https://api.freeagent.com/v2/contacts/123)
URI of the project to associate with the estimate (e.g., https://api.freeagent.com/v2/projects/123)
Currency code for the estimate (e.g., GBP, USD, EUR). If not specified, defaults to the contact's currency
Date of the estimate in YYYY-MM-DD format
VAT status for reporting purposes. One of: UK/Non-EC, EC Goods, EC Services, Reverse Charge, EC VAT MOSS
Free-text reference identifier for the estimate
Type of estimate document. Must be one of: Estimate, Quote, or Proposal
List of items to include in the estimate. At least one item is required.
Place of supply for VAT purposes. Required when ec_status is 'EC VAT MOSS'
Discount percentage applied across the entire estimate as a decimal string
Overrides the default contact name on the estimate
Whether sales tax should be included in the total value. Defaults to true
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_ESTIMATE_ITEMTool to create an estimate item in FreeAgent. Use when you need to add a line item to an existing estimate with details like position, type, quantity, price, and optional description.
Input parameters
URL of the estimate where the item should be added.
Details of the estimate item to create including position, type, quantity, and price.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_ESTIMATES_DUPLICATETool to duplicate an existing estimate in FreeAgent. Use when you need to create a copy of an estimate. The duplicated estimate will always have status=Draft, the next reference in the sequence, and dated_on set to today.
Input parameters
The ID of the estimate to duplicate
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_ESTIMATES_SEND_EMAILTool to email an estimate in FreeAgent. Use when you need to send an estimate to a contact via email with customizable subject, body, and attachments. You can use an existing email template (use_template=true) or provide manual email fields.
Input parameters
The estimate identifier (numeric ID or full URL path)
Root object containing email configuration
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_INVOICETool to create an invoice in FreeAgent. Use when you need to generate a new invoice for a contact. The invoice will be created in 'Draft' status and can be modified or sent later.
Input parameters
Due date in YYYY-MM-DD format
URL of the contact being invoiced (e.g., https://api.freeagent.com/v2/contacts/123)
Invoice comments or notes
Currency code (e.g., 'GBP', 'USD', 'EUR'). Defaults to company native currency if not provided.
Invoice date in YYYY-MM-DD format
Invoice reference number (optional, auto-generated if omitted)
Array of invoice line items to add to the invoice
Send payment reminder emails
Payment term duration in days
Send thank you emails after payment
Send new invoice notification emails to the contact
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_INVOICE_ITEMTool to create an invoice item in FreeAgent. Use when you need to add a line item to an existing invoice with details like type, quantity, price, and description.
Input parameters
URL of the invoice where the item should be added.
Details of the invoice item to create including type, quantity, price, and description.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_INVOICES_DUPLICATETool to duplicate an existing invoice in FreeAgent. Use when you need to create a new invoice based on an existing one. The duplicated invoice is always created with status 'Draft', today's date, and the next reference number in sequence.
Input parameters
The ID of the invoice to duplicate. Extract from invoice URL (e.g., '85939041' from 'https://api.freeagent.com/v2/invoices/85939041')
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_NOTESTool to create a note for a contact or project in FreeAgent. Use when you need to add documentation, reminders, or context to contacts or projects.
Input parameters
The text content of the note to create
URL of the contact to attach the note to (e.g., https://api.freeagent.com/v2/contacts/123). Either contact or project is required.
URL of the project to attach the note to (e.g., https://api.freeagent.com/v2/projects/123). Either contact or project is required.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_PRICE_LIST_ITEMSTool to create a price list item in FreeAgent. Use when you need to add a new item to the price list with code, description, pricing, and tax information.
Input parameters
Unique identifier code for the item. Used for invoice/estimate reference.
Unit price per item as a decimal string in the company currency.
Income accounting category URI reference. Must be a valid FreeAgent category API URL.
Item quantity as a decimal string. For single items, use '1.0'.
Category of the item such as Products, Services, Hours, Days, etc.
VAT status for UK accounts. Options: 'standard', 'reduced', 'zero', or 'out_of_scope'. Leave empty for non-UK accounts.
Free-text description of the item.
Sales tax rate as a decimal string for Universal/US accounts. For example, '0.20' for 20% tax. Leave empty for UK accounts.
Secondary sales tax rate as a decimal string for Universal accounts with multiple tax jurisdictions.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_CREATE_PROJECTTool to create a project in FreeAgent. Use when you need to set up a new project for tracking time, expenses, and billing against a specific client or internal initiative.
Input parameters
Free-text project name
Project budget amount (use zero if none exists). Must be non-negative.
Project status. Active = in progress, Completed = finished, Cancelled = abandoned, Hidden = archived from view.
Contact to bill for the project - URI reference like https://api.freeagent.com/v2/contacts/{id}
Project end date in YYYY-MM-DD format
Indicates IR35 employment classification status for UK tax purposes
ISO currency code (e.g., USD, GBP, EUR). Must be a valid 3-letter ISO currency code.
Project start date in YYYY-MM-DD format
Budget tracking unit. Hours = time-based in hours, Days = time-based in days, Monetary = financial amount.
Daily hours for day-based billing. Typically 7.5 or 8.0. Must be positive.
Billing period for the normal_billing_rate. Required when normal_billing_rate is specified.
Standard billing rate amount. Must be non-negative.
Contract or purchase order reference number
Indicates if invoicing follows project-level sequencing. Set to true for project-specific invoice numbering, false to use company-wide sequence.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_DELETE_BANK_TRANSACTIONTool to delete a bank transaction explanation in FreeAgent. Use when you need to remove an explanation from a bank transaction.
Input parameters
The ID of the bank transaction explanation to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_DELETE_ESTIMATES_DEFAULT_ADDITIONAL_TEXTTool to delete default additional text for estimates in FreeAgent. Use when you need to remove the default additional text that appears on estimates.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_DELETE_NOTES1Tool to delete a note by its ID. Use when you need to permanently remove a note from FreeAgent.
Input parameters
The unique identifier of the note to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_GET_INVOICE_TIMELINETool to retrieve invoice timeline showing chronological record of invoice-related events. Use when you need to track invoice payment history and related activities.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_GET_MILEAGE_SETTINGSTool to retrieve mileage settings including engine type/size options and reimbursement rates. Use when you need to determine valid engine configurations or current mileage rates for expense claims.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_GET_OPENING_BALANCESTool to retrieve the Opening Balances journal set for a company. Use when you need to access initial account balances including journal entries, bank accounts, and stock items.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_GET_PERSONAL_PROFILETool to retrieve the authenticated user's personal profile from FreeAgent. Use when you need information about the current user's details, role, or permissions.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_GET_THE_OPENING_BALANCESTool to retrieve the opening balances from the trial balance summary. Use when you need to get the initial balance amounts for all account categories at the start of the accounting period.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_GET_THE_PL_SUMMARYTool to retrieve the Profit and Loss summary for a specified period from FreeAgent. Use when you need financial performance overview including income, expenses, and retained profit.
Input parameters
End date in YYYY-MM-DD format. Defaults to today if not specified. Date periods must be ≤12 months or within a single accounting year.
Start date in YYYY-MM-DD format. Defaults to start of current accounting period if not specified. Date periods must be ≤12 months or within a single accounting year.
Accounting period in YYYY/YY format (e.g., 2022/23). Alternative to using from_date and to_date. Cannot be used together with from_date or to_date.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_GET_THE_TRIAL_BALANCE_SUMMARYTool to get the trial balance summary from FreeAgent. Use when you need to retrieve the trial balance report data for accounting purposes.
Input parameters
End date in YYYY-MM-DD format. When used alone, returns trial balance from accounting period start to this date. When not specified, uses current date.
Start date in YYYY-MM-DD format. When combined with to_date, returns trial balance for custom date range.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ACCOUNTING_BALANCE_SHEETTool to retrieve the balance sheet for a FreeAgent account. Use when you need to get financial position data including assets, liabilities, and equity. Returns balance sheet data for the specified date or current date if not specified.
Input parameters
Date for which balance sheet values are calculated. Format: YYYY-MM-DD. If not specified, returns values as at current date from the accounting period start.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ACCOUNTING_BALANCE_SHEET2Tool to retrieve opening balances for the balance sheet from FreeAgent. Use when you need to get the initial financial position values including capital assets, current assets, liabilities, and equity.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ACCOUNTING_TRANSACTIONSTool to list all accounting transactions from FreeAgent. Use when you need to retrieve transaction history for accounting purposes. Filter by date range or nominal code to narrow results.
Input parameters
Page number for pagination. Default is 1.
End of transaction period in YYYY-MM-DD format. Requested date periods must be equal or less than 12 months or be contained within a single accounting year. Example: '2024-12-31'
Number of records to return per page. Maximum 100, default 25.
Start of transaction period in YYYY-MM-DD format. Requested date periods must be equal or less than 12 months or be contained within a single accounting year. Example: '2024-01-01'
Filter transactions by nominal code. Use this to retrieve transactions for a specific accounting category.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_CIS_BANDS_FOR_A_COMPANYTool to list all CIS (Construction Industry Scheme) bands for a company. Use when you need to retrieve the available CIS bands configured for a UK company enrolled in CIS for Subcontractors. The bands include gross, standard, and higher rate bands with their respective deduction rates and nominal codes.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_EXPENSESTool to list all expenses from FreeAgent. Use when you need to retrieve expense records, optionally filtered by view type (recent/recurring), date range, project, or last update timestamp.
Input parameters
Page number for pagination. Default is 1.
Filter type: 'recent' displays only recent expenses, 'recurring' shows recurring expenses. Leave empty for all expenses.
Filter by specific project URI. Use the full project URI from FreeAgent API (e.g., 'https://api.freeagent.com/v2/projects/123').
End date for expense range in YYYY-MM-DD format. Use to filter expenses up to this date.
Number of records to return per page. Maximum 100, default 25.
Start date for expense range in YYYY-MM-DD format. Use to filter expenses from this date onwards.
ISO 8601 timestamp filter to return only expenses modified after this datetime. Format: YYYY-MM-DDTHH:MM:SSZ
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_PRICE_LIST_ITEMSTool to list all price list items from FreeAgent. Use when you need to retrieve all price list items with optional sorting by creation date, code, or update date.
Input parameters
Page number for pagination. Default is 1.
Sort order for the results. Options: 'created_at' (default) orders by creation time, 'code' orders by item code, 'updated_at' orders by modification timestamp. Prepend with '-' (e.g., '-created_at') to reverse the order.
Number of records to return per page. Maximum 100, default 25.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_PROPERTIESTool to list all properties in FreeAgent. Use when you need to retrieve property records for UK unincorporated landlord companies. Supports pagination for large result sets.
Input parameters
Page number for pagination. Default is 1.
Number of records to return per page. Maximum 100, default 25.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_RECURRING_INVOICESTool to retrieve a list of recurring invoices from FreeAgent. Use when you need to query recurring invoices by status or contact. Supports filtering by draft, active, or inactive status and can include nested invoice line items.
Input parameters
Page number for pagination. Default is 1.
Filter by invoice status: draft (draft recurring invoices), active (active recurring invoices), inactive (inactive recurring invoices)
Filter by contact URL (e.g., 'https://api.freeagent.com/v2/contacts/123')
Number of records to return per page. Maximum 100, default 25.
Include nested invoice items in the response. When true, invoice_items array will be populated with line items
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_SALES_TAX_PERIODS_FOR_A_COMPANYTool to list all sales tax periods for a company in FreeAgent. Use when you need to retrieve sales tax configuration history including rates, registration status, and effective dates. Available for US and Universal companies only.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_STOCK_ITEMSTool to list all stock items from FreeAgent. Use when you need to retrieve stock items with optional sorting by creation date, description, or update date.
Input parameters
Page number for pagination. Default is 1.
Sort order for the results. Options: 'created_at' (default) orders by creation time, 'description' orders alphabetically by item description, 'updated_at' orders by modification timestamp. Prepend with '-' (e.g., '-created_at') to reverse the order.
Number of records to return per page. Maximum 100, default 25.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_TASKSTool to list all tasks in FreeAgent. Use when you need to retrieve tasks with optional filtering by status, project, or update date, and sorting options.
Input parameters
Page number for pagination. Default is 1.
Sort order for tasks: name (default), project, billing_rate, created_at, updated_at
Filter tasks by status: all (default), active, completed, hidden
Filter tasks by project URL (e.g., https://api.freeagent.com/v2/projects/2)
Number of records to return per page. Maximum 100, default 25.
Filter tasks updated since this date. ISO date format (e.g., 2017-04-06)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_TIMESLIPSTool to list all timeslips from FreeAgent. Use when you need to retrieve time tracking records with optional filtering by date range, user, project, task, billing status, or last update timestamp.
Input parameters
Page number for pagination. Default is 1.
Filter by task URI. Use the full task URI from FreeAgent API (e.g., 'https://api.freeagent.com/v2/tasks/456').
Filter by user URI. Use the full user URI from FreeAgent API (e.g., 'https://api.freeagent.com/v2/users/123').
Filter timeslips by status: 'all' (default), 'unbilled', or 'running'. Use 'unbilled' for timeslips not yet invoiced, 'running' for active timers.
Return associated resources (user, project, task) as nested JSON objects instead of URI references. Set to true for detailed nested data.
Filter by project URI. Use the full project URI from FreeAgent API (e.g., 'https://api.freeagent.com/v2/projects/789').
Filter by end date in YYYY-MM-DD format. Returns timeslips up to this date.
Number of records to return per page. Maximum 100, default 25.
Filter by start date in YYYY-MM-DD format. Returns timeslips from this date onwards.
Filter by update timestamp in ISO 8601 format. Returns only timeslips updated after this datetime.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ALL_USERSTool to list users in FreeAgent. Use when you need to retrieve users with optional filtering by type (all, staff, advisors). Requires 'Tax, Accounting & Users' permission scope.
Input parameters
Filter users by type. Options: 'all' (show all users, default), 'staff' (show users with a role as an Owner, Director, Partner, Company Secretary, Employee or Shareholder), 'active_staff' (show non-hidden users with staff roles), 'advisors' (show users with an Accountant role), 'active_advisors' (show non-hidden users with Accountant role)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_BANK_ACCOUNTSTool to list bank accounts in FreeAgent. Use when you need to retrieve all bank accounts or filter by account type (standard, credit card, or PayPal).
Input parameters
Filter results by account type: standard_bank_accounts, credit_card_accounts, or paypal_accounts. If not provided, returns all account types.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_BANK_FEEDSTool to list all bank feeds for a company. Use when you need to retrieve the list of bank feeds and their current status.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_BANK_TRANSACTIONSTool to list all bank transactions under a certain bank account in FreeAgent. Use when you need to retrieve transaction history, reconcile accounts, or find specific transactions for a bank account.
Input parameters
Page number for pagination. Default is 1.
Filter transactions by status. 'all' returns all transactions (default), 'unexplained' returns transactions requiring explanation, 'explained' returns fully explained transactions, 'manual' returns manually entered transactions, 'imported' returns imported transactions from bank feeds, 'marked_for_review' returns transactions flagged for review.
End date for filtering transactions in YYYY-MM-DD format. Returns transactions dated on or before this date.
Number of records to return per page. Maximum 100, default 25.
Start date for filtering transactions in YYYY-MM-DD format. Returns transactions dated on or after this date.
The bank account URL identifier (e.g., 'https://api.freeagent.com/v2/bank_accounts/1840732'). This is required to filter transactions for a specific bank account.
If true, returns only transactions from the most recently uploaded bank statement. Useful for processing new transactions.
Returns transactions updated after this timestamp. Must be in ISO 8601 format (e.g., '2024-01-15T10:30:00Z').
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_BILLSTool to retrieve a list of bills from FreeAgent. Use when you need to view bills with optional filters by status, date range, contact, or project.
Input parameters
Page number for pagination. Default is 1.
Filter by status: all, open, overdue, open_or_overdue, paid, recurring, hire_purchase, cis.
Filter by contact API URL.
Filter by project API URL.
End date filter in YYYY-MM-DD format.
Number of records to return per page. Maximum 100, default 25.
Start date filter in YYYY-MM-DD format.
Filter by update time in ISO 8601 timestamp format.
Include bill items in response when set to true.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_BUSINESS_CATEGORIESTool to retrieve all available business categories from FreeAgent. Use when you need to get the complete list of industry classifications for company categorization.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_CATEGORIESTool to retrieve all categories for the current FreeAgent company. Categories are used to classify income or costs for estimate items, invoice items, expenses, bills, and bank transaction explanations. Returns four category sets: admin expenses, cost of sales, income, and general. Use sub_accounts parameter to include sub-accounts instead of top-level accounts.
Input parameters
When set to true, includes sub accounts in the response instead of top-level accounts where they exist. Sub accounts can be identified by a nominal code containing a dash (e.g., '602-1').
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_CONTACTSTool to list contacts in FreeAgent. Use when you need to retrieve contacts with optional filtering by type, sort order, or update date.
Input parameters
Page number for pagination. Default is 1.
Sort order: name (default), created_at, updated_at. Prefix with - for descending order (e.g., -name)
Filter contacts by type: all, active (default), clients, suppliers, active_projects, completed_projects, open_clients, open_suppliers, hidden
Number of records to return per page. Maximum 100, default 25.
ISO 8601 format datetime - only return contacts updated since the provided date and time
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_CREDIT_NOTE_RECONCILIATIONSTool to retrieve all credit note reconciliations from FreeAgent. Use when you need to list credit notes that have been reconciled against invoices. Optionally filter by update timestamp or date range.
Input parameters
Page number for pagination. Default is 1.
Filter by reconciliation date to (inclusive) in YYYY-MM-DD format. Only returns reconciliations dated on or before this date.
Number of records to return per page. Maximum 100, default 25.
Filter by reconciliation date from (inclusive) in YYYY-MM-DD format. Only returns reconciliations dated on or after this date.
Filter by update timestamp in ISO 8601 format (e.g., 2017-05-22T09:00:00.000Z). Only returns reconciliations updated after this timestamp.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_CREDIT_NOTESTool to list credit notes from FreeAgent. Use when you need to retrieve credit notes with optional filtering by contact, project, status, or date range. Requires 'Estimates and Invoices' permission.
Input parameters
Page number for pagination. Default is 1.
Sort results by 'created_at' or 'updated_at'. Prefix with hyphen for descending order (e.g., '-updated_at')
Filter results by view type. Options: 'all' (default), 'recent_open_or_overdue', 'open', 'overdue', 'open_or_overdue', 'draft', 'refunded'. You can also use 'last_N_months' format like 'last_3_months'.
Filter by specific contact URL (e.g., 'https://api.freeagent.com/v2/contacts/123')
Filter by specific project URL (e.g., 'https://api.freeagent.com/v2/projects/456')
Number of records to return per page. Maximum 100, default 25.
Retrieve records modified after specified timestamp (ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ)
When true, includes credit note items nested in response. Increases payload size but eliminates need for separate item requests.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_EC_MOSS_SALES_TAX_RATESTool to retrieve EC VAT MOSS sales tax rates for a specific EU country and date. Use when you need to determine the applicable VAT rates for cross-border digital services within the EU.
Input parameters
Transaction date in YYYY-MM-DD format. Required to retrieve the tax rates that were applicable on that specific date.
An EU member state name (e.g., Austria, France, Germany, Spain, Italy). Required to retrieve the applicable VAT rates for that country.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ESTIMATESTool to list estimates in FreeAgent. Use when you need to retrieve estimates with optional filtering by status, date range, contact, project, or invoice. Set nested_estimate_items to true to include estimate items in the response.
Input parameters
Page number for pagination. Default is 1.
Filter estimates by status: all (default), recent, draft, non_draft, sent, approved, rejected, invoiced
Filter estimates for a specific contact. Provide the contact URI
Filter estimates related to a specific invoice. Provide the invoice URI
Filter estimates for a specific project. Provide the project URI
Filter estimates up to this date. Format: YYYY-MM-DD
Number of records to return per page. Maximum 100, default 25.
Filter estimates from this date onwards. Format: YYYY-MM-DD
Returns estimates updated after specified timestamp. Format: ISO 8601 timestamp
Include estimate items nested within each estimate in the response. Set to true to eliminate the need for separate requests to retrieve estimate items
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_ESTIMATES_DEFAULT_ADDITIONAL_TEXTTool to retrieve the default additional text for estimates. Use when you need to get the default text that appears on all estimate documents.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_FINAL_ACCOUNTS_REPORTSTool to list final accounts reports for a company in FreeAgent. Use when you need to retrieve all final accounts reports with their filing status and period dates.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_HIRE_PURCHASESTool to retrieve all hire purchases for the authorized FreeAgent account. Use when you need to view existing hire purchase agreements. Requires 'Bills' access level and is only available for UK companies.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_INVOICES_DEFAULT_ADDITIONAL_TEXTTool to get the default additional text shown on all invoices. Use when you need to retrieve the default invoice text.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_NOTESTool to retrieve a list of notes for a contact or project. Use when you need to view all notes associated with a specific contact or project.
Input parameters
Page number for pagination. Default is 1.
Filter notes by contact URL (e.g., https://api.freeagent.com/v2/contacts/123). Either contact or project can be specified, not both.
Filter notes by project URL (e.g., https://api.freeagent.com/v2/projects/456). Either contact or project can be specified, not both.
Number of records to return per page. Maximum 100, default 25.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_PROJECTSTool to list projects in FreeAgent. Use when you need to retrieve projects with optional filtering by status and sorting. Requires 'Contacts and Projects' permission scope.
Input parameters
Page number for pagination. Default is 1.
Order by: name, contact_name, contact_display_name, created_at, or updated_at. Prefix with '-' for descending order (e.g., '-created_at').
Filter by status: active, completed, cancelled, hidden. If not specified, returns all projects.
Include full contact details as nested object. If false or not specified, returns only contact URL reference.
Number of records to return per page. Maximum 100, default 25.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_LIST_VAT_RETURNSTool to list VAT returns for a company in FreeAgent. Use when you need to retrieve VAT return records, their filing status, and payment information.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_SHOW_TAX_TIMELINETool to retrieve the company's tax timeline showing upcoming tax events and deadlines. Use when you need to view VAT returns, corporation tax payments, Companies House filings, and other tax-related events with their due dates and amounts.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_BANK_TRANSACTION_EXPLANATIONSTool to update a bank transaction explanation in FreeAgent. Use when you need to modify an existing explanation's details such as description, category, amounts, or tax information.
Input parameters
The numeric identifier of the bank transaction explanation to update. This is the ID from the explanation's URL.
Root element containing the bank transaction explanation data to update. Include only the fields you want to modify.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_ESTIMATES_DEFAULT_ADDITIONAL_TEXTTool to update the default additional text for estimates in FreeAgent. Use when you need to set or change the standard text that appears on all estimates.
Input parameters
The text to display on all estimates. Use this to set standard terms, conditions, or instructions for estimate recipients.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_ESTIMATES_TRANSITIONS_CONVERTTool to convert an estimate to an invoice in FreeAgent. Use when an estimate has been approved and needs to be converted into a billable invoice. The estimate's status will transition to 'Invoiced' and a new invoice will be created automatically.
Input parameters
The unique identifier of the estimate to convert to an invoice. Can be the numeric ID or full URL path.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_EXPENSESTool to update an existing expense in FreeAgent. Use when you need to modify expense details such as description, amount, date, category, or tax information. Only the fields you provide will be updated; omitted fields remain unchanged.
Input parameters
The unique identifier of the expense to update. Extract from the expense URL (e.g., '60124452' from 'https://api.freeagent.com/v2/expenses/60124452').
URL reference to the expense claimant (user who claimed the expense). Format: 'https://api.freeagent.com/v2/users/{id}'
Number of miles travelled for mileage expenses. Only applicable when category is 'Mileage'.
URL reference to a project for rebilling this expense. Format: 'https://api.freeagent.com/v2/projects/{id}'
URL reference to the accounting category or the literal string 'Mileage' for mileage expenses. Format: 'https://api.freeagent.com/v2/categories/{id}'
Three-letter ISO 4217 currency code for the expense. If omitted, uses company's default currency.
Date of the expense in YYYY-MM-DD format.
Free-text description of the expense. Use to provide context or details about the expense.
Total expense amount as a decimal string. Required if category is not 'Mileage'. Can be negative for refunds.
Type of rebilling: 'cost' (at cost), 'markup' (with markup), or 'price' (fixed price). Required if expense is being rebilled to a project.
Type of vehicle for mileage claims: 'Car', 'Motorcycle', or 'Bicycle'.
Rebilling amount as a decimal string. Required if rebill_type is 'markup' or 'price'.
Standard sales tax rate as a decimal string (e.g., '20.0' for 20%). Note: Sales tax on foreign currency expenses is generally not reclaimable.
Whether to reclaim mileage: 0 for no, 1 for yes.
Total sales tax amount as a decimal string.
Reference identifier for the receipt.
Manually specified sales tax amount in the company's native currency as a decimal string.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_INVOICES_DEFAULT_ADDITIONAL_TEXTTool to update the default additional text shown on all invoices. Use when you need to set or change the default invoice text that appears at the bottom of all invoices.
Input parameters
The text to display at the bottom of all invoices. This value replaces any existing default text.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_INVOICES_TRANSITIONS_CONVERTTool to convert a draft negative invoice to a credit note in FreeAgent. Use when you need to transform a draft invoice with a negative value into a credit note. The invoice must be in draft status and have a negative value before conversion.
Input parameters
The ID of the draft negative invoice to convert. Extract from invoice URL (e.g., '85939329' from 'https://api.freeagent.com/v2/invoices/85939329'). The invoice must be in draft status with a negative value.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_JOURNAL_SETSTool to update a journal set in FreeAgent. Use when you need to modify journal entries, change description, date, or tag. Can add new entries, modify existing ones, or remove entries using _destroy flag.
Input parameters
The ID of the journal set to update. Extract from the journal set URL (e.g., '6738617' from 'https://api.freeagent.com/v2/journal_sets/6738617').
Tag to identify journal sets created by your application. Tagged journal sets can only be edited or deleted via the API.
Date for the journal entries in YYYY-MM-DD format. If not specified, the existing date remains unchanged.
Free-text description of the journal set. If not specified, the existing description remains unchanged.
Array of journal entry objects to add, modify, or remove. Include url field to modify/remove existing entries, omit url to add new entries. Set _destroy=true with url to delete entries. All journal entries must balance to zero.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_NOTES1Tool to update an existing note in FreeAgent. Use when you need to modify the text content of a note attached to a contact or project.
Input parameters
The unique identifier of the note to update
The updated text content of the note
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_PRICE_LIST_ITEMSTool to update a price list item in FreeAgent. Use when you need to modify existing price list item fields like description, price, code, quantity, or tax settings.
Input parameters
The ID of the price list item to update
Unique identifier code for the item. Used for invoice/estimate reference.
Unit price per item as a decimal string in the company currency.
Income accounting category URI reference. Must be a valid FreeAgent category API URL.
Item quantity as a decimal string. For single items, use '1.0'.
Category of the item such as Products, Services, Hours, Days, etc.
VAT status for UK accounts. Options: 'standard', 'reduced', 'zero', or 'out_of_scope'. Leave empty for non-UK accounts.
Free-text description of the item.
Sales tax rate as a decimal string for Universal/US accounts. For example, '0.20' for 20% tax. Leave empty for UK accounts.
Secondary sales tax rate as a decimal string for Universal accounts with multiple tax jurisdictions.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPDATE_USERS_METool to update the authenticated user's personal profile in FreeAgent. Use when you need to modify user details such as name, email, role, or tax information.
Input parameters
User's role in the organization. Must be one of: Owner, Director, Partner, Company Secretary, Employee, Shareholder, or Accountant.
Login email address. Update this to change the email used for authentication.
User's last name
UK National Insurance Number. Format: two letters, six digits, one letter (e.g., AB123456C).
User's first name
Opening mileage value for expense tracking. Set this to the vehicle's mileage at the start of the accounting period.
Permission level for access control. Range: 0-8, where 8 represents full access and 0 represents minimal access.
10-digit UK Unique Tax Reference (UTR) number for self-assessment or corporation tax.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
FREEAGENT_UPLOAD_A_BANK_STATEMENTTool to upload a bank statement to FreeAgent. Use when you need to import multiple bank transactions at once for a specific bank account.
Input parameters
Array of transaction objects to upload. Each transaction represents a bank statement entry with date, amount, and other details
URL of the bank account to upload the statement to. Must be a valid FreeAgent bank account API URL in the format https://api.freeagent.com/v2/bank_accounts/{id}
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 87 agents privately built on Nagent that already use Freeagent.
Build on Nagent
Connect Freeagent to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Freeagent, and click "Connect Now." You'll authenticate with OAuth — Nagent handles credential storage and refresh automatically. Once connected, Freeagent is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Freeagent is connected, you configure its 76 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Freeagent steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Freeagent event fires, the agent kicks off automatically.
Every Freeagent action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Freeagent ships with 76 pre-built accounting actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Freeagent together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Freeagent-based workflows tailored to your business.