FreshBooks
Cloud-based accounting and invoicing software for small businesses
| API | Protocol | Base URL | Docs | Reference | OpenAPI | SDKs |
|---|---|---|---|---|---|---|
| Main | rest | https://api.freshbooks.com/ | link | — | — | — |
Actions (44)
Invoices · 9
- Create invoicePOST /accounting/account/{accountId}/invoices/invoices
Create a new invoice.
documented - Create invoice with discount valuePOST /accounting/account/{accountId}/invoices/invoices
Create an invoice that includes a discount value.
documented - Create invoice with unbilled expensePOST /accounting/account/{accountId}/invoices/invoices
Create an invoice that includes an unbilled expense in the invoice lines.
documented - Delete invoicePUT /accounting/account/{accountId}/invoices/invoices/{invoiceId}
Soft-delete an invoice by setting vis_state = 1.
documented - Get invoiceGET /accounting/account/{accountId}/invoices/invoices/{invoiceId}
Retrieve a single invoice by its ID.
documented - List invoicesGET /accounting/account/{accountId}/invoices/invoices
Retrieve a list of invoices for the given account.
documented - Mark invoice as sentPUT /accounting/account/{accountId}/invoices/invoices/{invoiceId}
Mark the invoice as sent (status change).
documented - Send invoice by emailPUT /accounting/account/{accountId}/invoices/invoices/{invoiceId}
Send the invoice by email to recipients (payload-based).
documented - Update invoicePUT /accounting/account/{accountId}/invoices/invoices/{invoiceId}
Update fields on an existing invoice.
documented
Clients · 5
- Create clientPOST /accounting/account/{accountId}/users/clients
Create a new client.
documented - Delete single clientPUT /accounting/account/{accountId}/users/clients/{customerId}
Soft-delete a client (vis_state = 1).
documented - Get single clientGET /accounting/account/{accountId}/users/clients/{customerId}
Retrieve a single client by ID.
documented - List clientsGET /accounting/account/{accountId}/users/clients
Retrieve all clients for the account.
documented - Update single clientPUT /accounting/account/{accountId}/users/clients/{customerId}
Update an existing client.
documented
Expenses · 5
- Create expensePOST /accounting/account/{accountId}/expenses/expenses
Create a new expense.
documented - Delete expensePUT /accounting/account/{accountId}/expenses/expenses/{expenseId}
Soft-delete an expense (vis_state = 1).
documented - Get single expenseGET /accounting/account/{accountId}/expenses/expenses/{expenseId}
Retrieve a single expense by ID.
documented - List expensesGET /accounting/account/{accountId}/expenses/expenses
Retrieve expenses for the account.
documented - Update expensePUT /accounting/account/{accountId}/expenses/expenses/{expenseId}
Update an existing expense.
documented
Invoice Presentation and Attachments · 5
- Create invoice with attachmentPOST /accounting/account/{accountId}/invoices/invoices
Create an invoice and attach one or more files.
documented - Create invoice with attachmentPOST /accounting/account/{accountId}/invoices/invoices
Create an invoice that includes attachments.
documented - Create invoice with presentationPOST /accounting/account/{accountId}/invoices/invoices
Create an invoice using a specific presentation style.
documented - Create invoice with presentationPOST /accounting/account/{accountId}/invoices/invoices
Create an invoice with a custom presentation (fonts, colors, logos).
documented - Create invoice without presentationPOST /accounting/account/{accountId}/invoices/invoices
Create an invoice without applying a saved presentation style.
documented
Invoice Profiles · 5
- Create invoice profilePOST /accounting/account/{accountId}/invoice_profiles/invoice_profiles
Create a new recurring invoice profile.
documented - Delete invoice profilePUT /accounting/account/{accountId}/invoice_profiles/invoice_profiles/{profileId}
Soft-delete an invoice profile (vis_state = 1).
documented - Get single invoice profileGET /accounting/account/{accountId}/invoice_profiles/invoice_profiles/{profileId}
Retrieve a specific invoice profile by ID.
documented - List invoice profilesGET /accounting/account/{accountId}/invoice_profiles/invoice_profiles
Retrieve all invoice profiles for the account.
documented - Update invoice profilePUT /accounting/account/{accountId}/invoice_profiles/invoice_profiles/{profileId}
Update fields on an existing invoice profile.
documented
Projects · 5
- Create projectPOST /projects/business/{businessId}/project
Create a new project.
documented - Delete projectDELETE /projects/business/{businessId}/project/{projectId}
Delete a project.
documented - Get single projectGET /projects/business/{businessId}/project/{projectId}
Retrieve a single project by ID.
documented - List projectsGET /projects/business/{businessId}/projects
Retrieve all projects for the business.
documented - Update projectPUT /projects/business/{businessId}/project/{projectId}
Update an existing project.
documented
Time Tracking · 5
- Create time entryPOST /timetracking/business/{businessId}/time_entries
Create a new time entry.
documented - Fetch time entries for a dayGET /timetracking/business/{businessId}/time_entries?page=0&started_from={from}&started_to={to}
Fetch time entries within a date range for a given day or period.
documented - Get time entryGET /timetracking/business/{businessId}/time_entries/{timeEntryId}
Retrieve a single time entry by ID.
documented - List time entriesGET /timetracking/business/{businessId}/time_entries
Retrieve all time entries for the business.
documented - Update time entryPUT /timetracking/business/{businessId}/time_entries/{timeEntryId}
Update an existing time entry.
documented
Taxes · 3
- Create taxPOST /accounting/account/{accountId}/taxes/taxes
Create a new tax for the account.
documented - Get single taxGET /accounting/account/{accountId}/taxes/taxes/{taxId}
Retrieve a single tax by ID.
documented - List taxesGET /accounting/account/{accountId}/taxes/taxes
Retrieve taxes for the account (supports filters).
documented