FreshBooks Automation: manage businesses, projects, time tracking, and billing in FreshBooks cloud accounting
Scanned 9/8/2026
Install to Claude Code
npx -y skills add thiagofernandes1987-create/APEX --skill freshbooks-automation --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Freshbooks Automation?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/thiagofernandes1987-create-freshbooks-automation)More formats (shields.io, HTML) on the badges page.
---
name: FreshBooks Automation
description: "FreshBooks Automation: manage businesses, projects, time tracking, and billing in FreshBooks cloud accounting"
requires:
mcp: [rube]
executor: HYBRID
skill_id: integrations.composio.freshbooks-automation
status: ADOPTED
security: {level: standard, pii: false, approval_required: false}
extends: integrations.composio.meta
toolkit: freshbooks-automation
# Phase3: This stub routes to the meta-skill. See skills/integrations/composio/SKILL.md for full protocol.
anchors:
- automation
- integration
- api
- workflow
tier: 3
input_schema:
- name: code_or_task
type: string
description: "Code snippet, script, or task description to process"
required: true
- name: context
type: string
description: "Additional context or background information"
required: false
output_schema:
- name: result
type: string
description: "Primary output from FreshBooks"
what_if_fails: >
FALLBACK: If Freshbooks cannot complete, provide partial results with
explicit gaps noted. Never block workflow silently.
ESCALATE: If core capability is unavailable, suggest nearest alternative skill.
RULE: Always explain what failed and what manual steps can substitute.
---
# FreshBooks Automation
Automate FreshBooks operations including listing businesses, managing projects, tracking time, and monitoring budgets for small and medium-sized business accounting.
**Toolkit docs:** [composio.dev/toolkits/freshbooks](https://composio.dev/toolkits/freshbooks)
---
## Setup
This skill requires the **Rube MCP server** connected at `https://rube.app/mcp`.
Before executing any tools, ensure an active connection exists for the `freshbooks` toolkit. If no connection is active, initiate one via `RUBE_MANAGE_CONNECTIONS`.
---
## Core Workflows
### 1. List Businesses
Retrieve all businesses associated with the authenticated user. The `business_id` from this response is required for most other FreshBooks API calls.
**Tool:** `FRESHBOOKS_LIST_BUSINESSES`
**Parameters:** None required.
**Example:**
```
Tool: FRESHBOOKS_LIST_BUSINESSES
Arguments: {}
```
**Output:** Returns business membership information including all businesses the user has access to, along with their role in each business.
> **Important:** Always call this first to obtain a valid `business_id` before performing project-specific operations.
---
### 2. List and Filter Projects
Retrieve all projects for a business with comprehensive filtering and sorting options.
**Tool:** `FRESHBOOKS_LIST_PROJECTS`
**Key Parameters:**
- `business_id` (required) -- Business ID obtained from `FRESHBOOKS_LIST_BUSINESSES`
- `active` -- Filter by active status: `true` (active only), `false` (inactive only), omit for all
- `complete` -- Filter by completion: `true` (completed), `false` (incomplete), omit for all
- `sort_by` -- Sort order: `"created_at"`, `"due_date"`, or `"title"`
- `updated_since` -- UTC datetime in RFC3339 format, e.g., `"2026-01-01T00:00:00Z"`
- `include_logged_duration` -- `true` to include total logged time (in seconds) per project
- `skip_group` -- `true` to omit team member/invitation data (reduces response size)
**Example:**
```
Tool: FRESHBOOKS_LIST_PROJECTS
Arguments:
business_id: 123456
active: true
complete: false
sort_by: "due_date"
include_logged_duration: true
```
**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
---
### 3. Monitor Active Projects
Track project progress and budgets by filtering for active, incomplete projects.
**Steps:**
1. Call `FRESHBOOKS_LIST_BUSINESSES` to get `business_id`
2. Call `FRESHBOOKS_LIST_PROJECTS` with `active: true`, `complete: false`, `include_logged_duration: true`
3. Analyze logged duration vs. budget for each project
---
### 4. Review Recently Updated Projects
Check for recent project activity using the `updated_since` filter.
**Steps:**
1. Call `FRESHBOOKS_LIST_BUSINESSES` to get `business_id`
2. Call `FRESHBOOKS_LIST_PROJECTS` with `updated_since` set to your cutoff datetime
3. Review returned projects for recent changes
**Example:**
```
Tool: FRESHBOOKS_LIST_PROJECTS
Arguments:
business_id: 123456
updated_since: "2026-02-01T00:00:00Z"
sort_by: "created_at"
```
---
## Recommended Execution Plan
1. **Get the business ID** by calling `FRESHBOOKS_LIST_BUSINESSES`
2. **List projects** using `FRESHBOOKS_LIST_PROJECTS` with the obtained `business_id`
3. **Filter as needed** using `active`, `complete`, `updated_since`, and `sort_by` parameters
---
## Known Pitfalls
| Pitfall | Detail |
|---------|--------|
| **business_id required** | Most FreshBooks operations require a `business_id`. Always call `FRESHBOOKS_LIST_BUSINESSES` first to obtain it. |
| **Date format** | The `updated_since` parameter must be in RFC3339 format: `"2026-01-01T00:00:00Z"`. Other formats will fail. |
| **Paginated results** | Project list responses are paginated. Check for additional pages in the response. |
| **Empty results** | Returns an empty list if no projects exist or match the applied filters. This is not an error. |
| **Logged duration units** | When `include_logged_duration` is true, the duration is returned in seconds. Convert to hours (divide by 3600) for display. |
---
## Quick Reference
| Tool Slug | Description |
|-----------|-------------|
| `FRESHBOOKS_LIST_BUSINESSES` | List all businesses for the authenticated user |
| `FRESHBOOKS_LIST_PROJECTS` | List projects with filtering and sorting for a business |
---
*Powered by [Composio](https://composio.dev)*
## Why This Skill Exists
Stub for the `freshbooks-automation` toolkit in the Composio integration ecosystem.
Extends `integrations.composio.meta` — see the meta-skill for full protocol.
## When to Use
Use when automating `freshbooks-automation` tasks via Rube MCP (Composio).
For generic Composio queries, use `integrations.composio.meta` directly.
## What If Fails
See `skills/integrations/composio/SKILL.md` (meta-skill) for full fallback protocol.
RULE: Never block workflow — always suggest manual alternative if automation fails.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!