Freshbooks
Your Toolhouse AI Worker can connect to Freshbooks using 10 specialized tools.
Auth Connection
This service requires an auth connection to use its tools. You can set this up in your Toolhouse dashboard under Auth Connections.
Tools (10)
Freshbooks Create Webhook
Freshbooks Create WebhookIntegration name: FRESHBOOKS_CREATE_WEBHOOK
Register a new webhook callback for a FreshBooks account. Webhooks notify your application when specified events occur (e.g., when invoices are created, clients are updated, or payments are received). Prerequisites: Obtain a valid account_id using the List Businesses action first. Important Notes: - FreshBooks implements a verification mechanism to ensure you own the callback URI. The 'verified' field will initially be false. - Your webhook endpoint must respond with a 2xx HTTP status code. Any other status code (including 3xx redirects) is treated as a failure. - Webhook requests have a 10-second timeout. - Requires 'user:webhooks:write' OAuth scope. Common Event Types: client.create, client.update, client.delete, invoice.create, invoice.update, invoice.delete, payment.create, payment.update, payment.delete, expense.create, expense.update, expense.delete.
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
uri
string
✅
"https://webhook.site/unique-endpoint"
URL endpoint to receive webhook notifications. Must be a valid HTTPS URL that can receive POST requests. FreshBooks will send webhook payloads to this URI when the subscribed event occurs. The endpoint must respond with a 2xx status code (redirects and other codes are treated as failures).
event
string
✅
"client.create"
Event type to subscribe to. Specifies which FreshBooks events will trigger the webhook. Common events include: client.create, client.update, client.delete, invoice.create, invoice.update, invoice.delete, payment.create, payment.update, payment.delete, expense.create, expense.update, expense.delete.
account_id
string
✅
"Qrv21P"
Unique identifier of the FreshBooks account to register the webhook for. Obtain this from the account_id field in the List Businesses action response.
Freshbooks Delete Webhook
Freshbooks Delete WebhookIntegration name: FRESHBOOKS_DELETE_WEBHOOK
Delete a webhook callback from a FreshBooks account. Use when you need to remove an existing webhook subscription that is no longer needed.
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
account_id
string
✅
"Qrv21P"
The unique FreshBooks account identifier. Obtain this from the account details or business information.
callback_id
string
✅
"831443"
The unique identifier of the webhook callback to delete. Obtain this from the list webhooks response.
Freshbooks Get Business Users
Freshbooks Get Business UsersIntegration name: FRESHBOOKS_GET_BUSINESS_USERS
Retrieves staff identities and members for a specific FreshBooks business. This action returns detailed information about all staff members (owners, admins, employees) in a business group, including their roles, email addresses, and active status. Use this to discover team members before assigning time entries or tasks.
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
business_id
integer
✅
14345587
The unique identifier of the business whose staff identities you want to retrieve. Obtain this from the List Businesses action.
Freshbooks List Businesses
Freshbooks List BusinessesIntegration name: FRESHBOOKS_LIST_BUSINESSES
List all businesses associated with the authenticated user. This action retrieves business membership information from the FreshBooks Identity endpoint, showing all businesses the user has access to along with their role in each business. The business_id from this response is required for many other FreshBooks API calls.
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called. No parameters required.
Freshbooks List Clients
Freshbooks List ClientsIntegration name: FRESHBOOKS_LIST_CLIENTS
Retrieves all clients for a FreshBooks account. Clients are entities you send invoices to. Supports pagination, filtering by email/user ID/visibility state, sorting, and includes optional balance data (outstanding, credit, draft, overdue).
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
page
integer
1
Page number for pagination. Pages are 1-indexed.
sort
string
"organization_name"
Sort results by field: client_id, organization_name, email, updated, fullname, or outstanding.
include
array
["outstanding_balance","credit_balance"]
Include additional balance data in response. Options: outstanding_balance, credit_balance, draft_balance, overdue_balance.
per_page
integer
15
Number of results per page. Default is 15.
account_id
string
✅
"Qrv21P"
Unique identifier of the FreshBooks account. Obtain this from the List Businesses action (use the account_id field from the business object).
search_email
string
"client@example.com"
Filter by exact email address match.
search_userid
integer
12345
Filter by exact user ID match.
search_vis_state
string
—
Visibility state for clients.
Freshbooks List Journal Entries2
Freshbooks List Journal Entries2Integration name: FRESHBOOKS_LIST_JOURNAL_ENTRIES2
Retrieves all journal entries for a FreshBooks business account. Journal entries are the building blocks of financial accounting, recording all business transactions including invoices, payments, credits, and expenses. Use this action to get a comprehensive view of your accounting records.
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
page_size
integer
30
Number of journal entries to return per page. Use to control response size. Defaults to 30 if not specified.
page_number
integer
1
The page number to retrieve. Use for pagination when there are many journal entries. Defaults to 1 if not specified.
business_uuid
string
✅
"384ae6c2-a966-4603-959a-45da0fdf1e8d"
The UUID of the business whose journal entries you want to list. Obtain this from the List Businesses action.
Freshbooks List Projects
Freshbooks List ProjectsIntegration name: FRESHBOOKS_LIST_PROJECTS
Retrieves all projects associated with a FreshBooks business account. This action returns a paginated list of projects with comprehensive details including client information, billing rates, budget, completion status, team members, and associated services. Use this to discover available projects before performing project-specific operations. Prerequisites: Obtain a valid business_id using the List Businesses action first. Use Cases: - Get all projects for time tracking or invoicing - Find projects by client, status, or date range - Monitor project completion and budget tracking - Retrieve team assignments and project groups Response: Returns an empty list if no projects exist or match the filters.
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
active
boolean
true
Filter by active status. Set to true to return only active projects, false for inactive projects. Omit to return all projects regardless of active status.
sort_by
string
—
Sort order for the returned projects. Choose 'created_at' for creation date, 'due_date' for project due date, or 'title' for alphabetical order. Omit for default API ordering.
complete
boolean
true
Filter by completion status. Set to true to return only completed projects, false for incomplete projects. Omit to return all projects regardless of completion status.
skip_group
boolean
true
Exclude group membership data. Set to true to omit the group field (which contains team member and invitation details) from each project to reduce response size.
business_id
integer
✅
123456
The unique identifier of the business whose projects you want to list. Obtain this from the List Businesses action.
updated_since
string
"2023-01-01T00:00:00Z"
Filter by last update time. Only returns projects updated at or after this UTC datetime. Must be in RFC3339 format (e.g., '2023-01-01T00:00:00Z').
include_logged_duration
boolean
true
Include time tracking data. Set to true to include the total logged duration (in seconds) for each project in the response.
Freshbooks List Webhooks
Freshbooks List WebhooksIntegration name: FRESHBOOKS_LIST_WEBHOOKS
List all webhook callbacks registered for a FreshBooks account. Webhooks notify your application when events occur (e.g., invoice creation, payment received). Use this to discover what webhook callbacks are currently active for an account before creating or managing webhook subscriptions.
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
account_id
string
✅
"Qrv21P"
Unique identifier of the FreshBooks account. Obtain this from the List Businesses action (corresponds to account_id field in the business object).
Freshbooks Register As A New User
Freshbooks Register As A New UserIntegration name: FRESHBOOKS_REGISTER_AS_A_NEW_USER
Register a new user account in FreshBooks. Returns an access token upon successful registration. Use this action when you need to create a new FreshBooks user account programmatically with their business information.
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
email
string
✅
"newuser@gmail.com"
Valid email address for the new user. Must use a real domain (e.g., gmail.com, outlook.com). This will be the user's login email.
password
string
✅
"SecurePassword123!"
Password for the new user account. Should be strong and meet security requirements.
last_name
string
✅
"Smith"
Last name of the user being registered.
first_name
string
✅
"Jane"
First name of the user being registered.
business_name
string
✅
"Acme Consulting Inc"
Name of the business to register for the new user. This will be associated with their FreshBooks account.
Freshbooks Update Webhook
Freshbooks Update WebhookIntegration name: FRESHBOOKS_UPDATE_WEBHOOK
Update or verify a FreshBooks webhook callback. Use this to verify a newly created webhook by providing the verification code, or to request a new verification code be sent to the callback URI. Prerequisites: You need the account_id (from List Businesses as business_uuid) and callback_id (from webhook creation). Use Cases: - Verify a webhook after creation by providing the verifier code received at your callback URI - Request a new verification code if the original was lost or expired (set resend=true) Important: The verifier and resend parameters are mutually exclusive - provide only one per request.
Parameters
Your Toolhouse AI worker will automatically pass these parameters as input when the tool is called.
resend
boolean
true
Set to true to resend the verification code to the callback URI. Mutually exclusive with verifier. Only use when you need a new verification code.
verifier
string
"abc123xyz"
Verification code received at the callback URI. Provide this to verify a newly created webhook. Mutually exclusive with resend.
account_id
string
✅
"Qrv21P"
The account ID for the FreshBooks account. Obtain this from the List Businesses action as business_uuid.
callback_id
string
✅
"831445"
The unique identifier of the webhook callback to update. Obtain this from the list or create callbacks endpoints.